在ASP.NET应用程序中将Jquery超时代码集成到经典ASP表单中

在ASP.NET应用程序中将Jquery超时代码集成到经典ASP表单中,jquery,asp-classic,timeout,parent-child,Jquery,Asp Classic,Timeout,Parent Child,我编写了一个Jquery函数,它在一定程度的不活动后会使屏幕变黑,创建一个弹出窗口,允许用户单击按钮保持登录状态,如果用户没有及时响应,则将其注销(关闭应用程序窗口) 环境是ASP.NET(VB)。从技术上讲,我们不使用母版页,但我们有一个父页,其中包含页眉、页脚和导航,我的Jquery代码从该窗口调用,并通过IFrame加载 我们使用txControl的ActiveX版本作为应用程序内置的文本编辑器。我们很快就要升级了,但现在我有一个经典的ASP页面,我需要将超时代码集成到其中,但是当超时代码

我编写了一个Jquery函数,它在一定程度的不活动后会使屏幕变黑,创建一个弹出窗口,允许用户单击按钮保持登录状态,如果用户没有及时响应,则将其注销(关闭应用程序窗口)

环境是ASP.NET(VB)。从技术上讲,我们不使用母版页,但我们有一个父页,其中包含页眉、页脚和导航,我的Jquery代码从该窗口调用,并通过IFrame加载

我们使用txControl的ActiveX版本作为应用程序内置的文本编辑器。我们很快就要升级了,但现在我有一个经典的ASP页面,我需要将超时代码集成到其中,但是当超时代码生效时,ASP文件不会像其他子窗口那样“黑”出来,继续会话的按钮是不可见的,我猜它会落在ASP页面后面

下面是我的主超时函数,它位于.js文件中,通过脚本标记插入父窗口:

function pop_init() {
    // show modal div
    $("html").css("overflow", "hidden");
    $("body").append("<div id='popup_overlay'></div><div id='popup_window'></div>");
    //$("#popup_overlay").click(popup_remove);  // removed to make sure user clicks button to continue session.
    $("#popup_overlay").addClass("popup_overlayBG");
    $("#popup_overlay").fadeIn("slow");

    // build warning box
    $("#popup_window").append("<h1>Warning!!!</h1>");
    $("#popup_window").append("<p id='popup_message'><center>Your session is about to expire.  Please click the button below to continue working without losing your session.</center></p>");
    $("#popup_window").append("<div class='buttons'><center><button id='continue' class='positive' type='submit'><img src='images/green-checkmark.png' alt=''/> Continue Working</button></center></div>");

    // attach action to button
    $("#continue").click(session_refresh);

    // display warning window
    popup_position(400, 300);
    $("#popup_window").css({ display: "block" }); //for safari using css instead of show
    $("#continue").focus();
    $("#continue").blur();

    // set pop-up timeout
    SESSION_ALIVE = false;
    window.setTimeout(popup_expired, WARNING_TIME);
}
函数pop_init(){
//显示模态div
$(“html”).css(“溢出”、“隐藏”);
$(“正文”)。追加(“”);
//$(“#popup_overlay”)。单击(popup_remove);//删除以确保用户单击按钮继续会话。
$(“弹出式覆盖”).addClass(“弹出式覆盖”);
$(“弹出式覆盖”).fadeIn(“慢速”);
//构建警告框
$(“#弹出窗口”)。追加(“警告!!!”;
$(“#弹出窗口”)。追加(

您的会话即将过期。请单击下面的按钮继续工作,而不会丢失会话。

”; $(“弹出窗口”)。追加(“继续工作”); //将操作附加到按钮 $(“#继续”)。单击(会话#刷新); //显示警告窗口 弹出_位置(400300); $(“#弹出窗口”).css({display:“block”})//用于使用css而不是show的safari $(“#继续”).focus(); $(“#继续”).blur(); //设置弹出超时 SESSION_ALIVE=false; 设置超时(弹出超时,警告超时); }
我在子窗口中的mousedown、keydown和blur事件中附加了“保持活力”代码,如下所示:

<script src="http://jqueryjs.googlecode.com/files/jquery-1.2.6.min.js" type="text/javascript" language="javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        window.parent.reportChildActivity();
    });
</script>
<script type="text/javascript">
    $(document).bind("mousedown keydown blur", function() {        
            window.parent.reportChildActivity();
    });
</script>

$(文档).ready(函数(){
window.parent.reportChildActivity();
});
$(document).bind(“mousedown-keydown-blur”,function(){
window.parent.reportChildActivity();
});
我尝试将以下内容添加到我的ASP文件中,结果却显示在所附图像中:

<script src="http://jqueryjs.googlecode.com/files/jquery-1.2.6.min.js" type="text/javascript" language="javascript"></script>
<script src="JScripts/RC_jquery.js" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function() {
        window.parent.reportChildActivity();
    });
</script>
<script type="text/javascript">
    $(document).bind("mousedown keydown blur", function() {
        window.parent.reportChildActivity();
    });
</script>

$(文档).ready(函数(){
window.parent.reportChildActivity();
});
$(document).bind(“mousedown-keydown-blur”,函数(){
window.parent.reportChildActivity();
});
有人能告诉我需要做什么才能让Jquery timeout div按设计覆盖整个窗口吗?感谢您的时间和您可能提供的任何帮助

Top pic是所需的结果,也是所有aspx页面上的结果。底部图片是我在经典asp页面上看到的


编辑:嗯,我想把ASP页面的所有重要部分包装在一个div(称为“divPage”)中,然后隐藏div。如果我从ASP文件头部分的脚本中调用“$('#divPage').hide();”,它会像一个符咒一样工作——一旦加载文档,它就会隐藏div。但是,我需要条件隐藏,所以我尝试将相同的代码放在我的Jquery文件中,放在pop_init函数中,尽管该函数中的其余代码对我来说执行得很完美,但隐藏divPage的代码却没有任何作用。你知道为什么我会从InLine代码中得到与RC_Jquery.js文件中包含的函数不同的结果吗?

Jquery都是客户端编码,ASP是服务器端-此帖子需要移动到Jquery论坛/标签