javascript - 页面抛出 JavaScript 运行时错误 : 'Function name' is undefined. 仅限 IE10

标签 javascript asp.net

在 IE10 上工作时,我发现从后面的代码注册或调用的 JavaScript 函数抛出异常:

"JavaScript runtime error: 'function name' is undefined".

例如: (!IsPostBack) block 中的代码:

Page.RegisterStartupScript("showGCAlert", "<script language=\"javascript\">ShowGCAlert();</script>");

页面浏览量:

function ShowGCAlert()
    {

        alert('GCAlert');
        if(document.getElementById('hdnGCAlert').value != "1")
        {
            document.getElementById('divGCAlert').style.display = "Block";
            document.getElementById('chkReminder').focus();
            document.getElementById('btnLogin').disabled = true;
            document.getElementById('Button2').disabled = true;             

        }
        else
        {
            document.getElementById('divGCAlert').style.display = "none";
            document.getElementById('btnLogin').disabled = false;
            document.getElementById('Button2').disabled = false;                
            if (document.getElementById("txtUsername").value != "")
                document.getElementById("txtPassword").focus();
            else
                document.getElementById("txtUsername").focus();
        }

    }

即使动态页面上存在 ShowGCAlert(),页面加载时也会抛出异常。

继续异常设计页面后显示:

<script language="javascript" src="/ABC/DEF/Scripts/Common.js"></script>
<script language="javascript">
    document.body.style.overflowY="hidden";
    document.body.style.overflowX="hidden";
    var jsAppName ='ABC';
</script>
<script language="javascript">
    function window.onresize() 
    { 
        document.cookie = "resX=" 
                        + document.body.clientWidth 
                        + ";resY=" 
                        + document.body.clientHeight 
                        + ";path=/"; 
    } 
    window.onresize();
</script>
<script type="javascript">
      ShowGCAlert();
</script>
<script language="javascript">
    document.getElementById('txtPassword').focus();
</script>

在 ie9 或 IE10 兼容性中查看其工作正常。请告诉我哪里做错了。

最佳答案

尝试使用 RegisterClientScriptBlock 将脚本放在页面末尾并调用它。

   Page.ClientScript.RegisterClientScriptBlock("showGCAlert", 
     "<script type=\"text/javascript\">ShowGCAlert();</script>");

关于javascript - 页面抛出 JavaScript 运行时错误 : 'Function name' is undefined. 仅限 IE10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20100136/

相关文章:

javascript - 传单 - map 的顶部始终指向传感器的前进方向

c# - ASP :Button click event inside update panel not firing

javascript - 将 C# 模型转换为 Angular 模型

asp.net - Sys.require、ASP.NET AJAX 加载器脚本的 future 是什么?

c# - IIS 8 中 ASP.NET CORE 1.0.1 APP 上的 SqlException : Login failed for user '' .

JavaScript prototype.init 疯狂

Javascript:调用存储在变量中的方法

php - 如何删除并显示密码字段中的单词 "password"

javascript - 如何每秒更新 "event.clientX"?

asp.net - 如何使用 ASP.NET Identity 使声明无效?