我希望我的网站能够跟踪用户会话并删除" .disabled"类。用户登录。
我有一个数据库跟踪页面正在通过ID访问,但无法让我围绕如何检查数据库并在页面加载上应用CSS更改。
.disabled {
pointer-events: none;
cursor: default;
opacity: 0.6; } //Remove this class to unlock content
这是一些可能性:假设您在加载页面之前先以某种方式查询数据库。您可以在模型上添加一个属性,该属性在您获取页面的数据时被填充的属性。在html或使用razor @model.visitid或类似的东西中。
另一种可能性是在控制器中编写一种方法,并在页面加载后用Ajax调用该方法。例如:
说您有visitme.cshtml,vistme.js,vistmemodel.cs,vistmecontroller.cs
JavaScript看起来像:
// namespace used to organize code not required
var VisitMeNameSpace = {
var currentUser = GetCurrentUser();
var pageName = GetPage();
var visitMe_GetVisitMeVisitors = "ProjectName/VisitMe/GetVisitMeVisitors";
var args = {
page: pagename
}
$.ajax({
url: visitMe_GetVisitMeVisitors,
type: "GET",
data: args
})
.done(function (data) {
if (data is good)
$("selector").removeClass("disabled");
})
.fail(function(){
alert("There was a problem getting visitor IDs for this page");
});
}// end VisitMeNameSpace
// In your C# controller maybe something like
public JsonResult GetVisitMeVisitors(string page)
{
// whatever you are currently using to query database do that here. We will call this from VisitMe.js
var visitContainer = new ProjectContainerForVisitMe();
var visitRecords = (from record in visitContainer.VisitMeTableOrModel where record.page == page select record).ToList();
return Json(visitRecords, JsonRequestBehavior.AllowGet);
}
请让我知道您是否需要更清晰,或者看起来像我误解了这个问题。