我有一个ASP.NET MVC Web应用程序。应用程序可以通过“远程控制”进行管理,该远程控制是jQuery UI dialog,仅在具有足够权限的用户登录并单击“显示远程控制”按钮时才会显示。 (显然,对话框的HTML代码不存在。)
当用户点击网站上的链接时,此对话框将自行关闭 我希望对话框“记住”它是打开的,并在这种情况下自动打开。
最简单,最跨浏览器兼容的方法是什么?
(我们现在假设我不想关注古老的浏览器,使用它的人会使用新的浏览器。)
以下是初始化对话框的代码。
$(document).ready(function () {
$("#remote-control").dialog({
autoOpen: false,
show: "explode",
hide: "explode",
title: "Távirányító",
minWidth: 220,
maxWidth: 260,
width: 190,
height: 300,
maxHeight: 500,
position: [50, 100]
});
$("#remote-control-opener").click(function () {
$("#remote-control").dialog("open");
return false;
});
});
提前感谢您的回答!
答案 0 :(得分:4)
有两种方法可以做到这一点。使用cookie或URL参数设置isRemoteVisible
之类的值,您可以在页面加载时检查该值。我将用来实现这个的jquery库是:
使用url参数更可靠,因为您的用户可能禁用了Cookie。在检测到cookie / param的值后,您可以通过编程方式触发远程控制以弹出。
修改强>
您可以使用上面提到的库设置cookie,如下所示:
$.cookie('isRemoteVisible', 'true');
然后您可以按如下方式获取此cookie值:
var showRemote = $.cookie('isRemoteVisible');
最后,对此进行检查以打开对话框:
if ("true" == showRemote)
$("#remote-control").dialog("open");