javascript - 不显眼的 JQuery 无法在 IE8 中运行?

标签 javascript jquery asp.net-mvc asp.net-mvc-3

我已经为我的一个按钮设置了一个 onclick 事件,该事件在 Firefox、Chrome、Safari 和 Opera 中运行良好。但在 IE8 中,永远不会调用 te 脚本(永远不会执行调试器语句)。

脚本:

$(function () {
    $('#template-button').click(function () {
        debugger;
        var $templateDdl = $('#templateDdl');
        var selTempID = $templateDdl.val();
        var url = $templateDdl.data('url');
        $.post(url, { selectedTemplateID: selTempID }, function (data) {
            $('#template').html(data);
        });
    });
});

按钮:

<input type="button" value="Verander template" id="template-button" />

JQuery 位于一个名为 artsportaal.js 的单独文件中,该文件在 _Layout.cshtml 中加载:

<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/modernizr-1.7.min.js")" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.ui.core.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.ui.datepicker.min.js")" type="text/javascript"></script>

<script src="@Url.Content("~/Scripts/IG/infragistics.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/IG/infragistics.loader.js")" type="text/javascript"></script>

<script src="@Url.Content("~/Scripts/artsportaal.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/DatePickerReady.js")" type="text/javascript"></script>

它几乎是作为最后一个脚本加载的。

这是一个众所周知的问题,有解决方法吗?我做错了什么吗?感谢您抽出时间并关注我的问题。

最佳答案

这段代码完美运行。正如 @ravisoni 评论的那样,我可能是因为名字冲突。

<html>
<head>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" ></script>

    <script type="text/javascript">

        $(function () {
            $('#my_button').click(function () {
                alert('button got clicked!');
            });
        });

    </script>

</head>
<body>
    <input type="button" value="click_me" id="my_button" />
</body>
</html>

编辑:我编辑对@devnull69关于“调试;”的评论。 JS 接受没有副作用的语句,因此脚本不会因为“调试”而崩溃

这是有效的 JS:

$(function () {
    $('#my_button').click(function () {
        'use strict';
        'or better, do not use strict';
        var x = 83;
        x;
        alert('button got clicked!');
    });
});

尝试一下:http://jsfiddle.net/SQgdK/1/

关于javascript - 不显眼的 JQuery 无法在 IE8 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15247023/

相关文章:

javascript - 无法使用 ES6 导入语法

javascript - 如何阻止大于视口(viewport)的 DIV 滚动?

asp.net-mvc - asp.net mvc 和身份验证示例

c# - PrincipalContext.ValidateCredentials 总是返回 FALSE

javascript - 不可点击的分层元素,Z-Index 不起作用

javascript - 如何用 Jest 模拟node_module内部的构造函数?

javascript - 悬停 Bootstrap 日期选择器

jquery - File API 文件上传 - 读取 ASP.NET MVC 中的 XMLHttpRequest

javascript - 为什么从 PHP 发出的 Javascript 函数找不到?

jquery - 寻找一个类似于wrapAll的jQuery函数,它只会包装连续的元素