Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将window.SessionTimeout脚本传递到js文件_Javascript_Asp.net Mvc_View - Fatal编程技术网

Javascript 将window.SessionTimeout脚本传递到js文件

Javascript 将window.SessionTimeout脚本传递到js文件,javascript,asp.net-mvc,view,Javascript,Asp.net Mvc,View,我正在做一个MVC应用程序。这在my_Layout.cshtml中 我需要把它移到一个js文件中 <script type="text/javascript"> window.SessionTimeout = (function() { var _timeLeft, _popupTimer, _countDownTimer; var stopTimers = function() { window.clearTimeout(_popupTimer);

我正在做一个MVC应用程序。这在my_Layout.cshtml中

我需要把它移到一个js文件中

<script type="text/javascript">
window.SessionTimeout = (function() {
    var _timeLeft, _popupTimer, _countDownTimer;

    var stopTimers = function() {
        window.clearTimeout(_popupTimer);
        window.clearTimeout(_countDownTimer);
    };

    var updateCountDown = function() {
        var min = Math.floor(_timeLeft / 60);
        var sec = _timeLeft % 60;
        if(sec < 10)
            sec = "0" + sec;

        document.getElementById("CountDownHolder").innerHTML = min + ":" + sec;

        if(_timeLeft > 0) {
            _timeLeft--;
            _countDownTimer = window.setTimeout(updateCountDown, 1000);
        } else  {
            document.location = "Home/TimeOutPage";
        }            
    };

    var showPopup = function() {
        _timeLeft = 60;
        updateCountDown();
        ClientTimeoutPopup.Show();
    };

    var schedulePopup = function() {
        stopTimers();
        _popupTimer = window.setTimeout(showPopup, @PopupShowDelay);
    };

    var sendKeepAlive = function() {
        stopTimers();
        ClientTimeoutPopup.Hide();
        SessionTimeout.schedulePopup();
    };

    return {
        schedulePopup: schedulePopup,
        sendKeepAlive: sendKeepAlive
    };

})();    
更新

好的,我发现了错误。 问题在于变量

@PopupShowDelay
我在视图中定义了它,并试图读取.js文件

所以,我要检查一下:


谢谢

嵌套函数中的
上下文可能有问题。

如果您在模板文档正文末尾的脚本标记中链接了文件,并且文件加载正确(如果执行了代码,请使用console.log进行测试),则代码应该正常工作。

您可以原样复制它。你为什么认为它不起作用?是的,我也是这么想的。但我不工作。不知道为什么
@PopupShowDelay