【问题标题】:Javascript jQuery error firing in Internet Explorer在 Internet Explorer 中触发 Javascript jQuery 错误
【发布时间】:2012-02-13 13:45:56
【问题描述】:

这里是代码和错误信息:

网页错误详情

用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.1;WOW64; 三叉戟/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729;媒体中心PC 6.0; .NET4.0C; .NET4.0E; InfoPath.2) 时间戳:2012 年 1 月 18 日星期三 20:26:33 UTC

消息:对方法或属性访问的意外调用。行:3 个字符: 31959 代码:0 URI: https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js

还有 Jquery 代码:

    <script type="text/javascript">
        $(document).ready(function() {
            $('.small-list-items-pagination li a').click(function(e) {
                e.preventDefault();
                $.ajax({
                    type: "GET",
                    url: '/Noticias/FetchMiniNoticiasFromPage',
                    data: "page=" + $(this).text(),
                    dataType: "json",
                    success: function (data) {
                        $('.small-list-items li').remove();

                        $.each(data, function(i, val){
                            $(".small-list-items").append('<li>' +
                                '<img src="' + val.ImagenChicaUrl + '" alt="' + val.Descripcion + '"/>' +
                                '<a href="#">' + val.FechaDePublicacion + '</a>' +
                                '<p>' + val.Descripcion + '</p>' +
                                 '<div class="horizontal-line"></div>' +
                            '</li>');
                        });
                    },
                    error: function (obj) {
                        alert("bad!");
                    }
                });
            });
        });
    </script>

任何想法有什么问题吗?这在 Firefox、Opera、Google Chrome 中效果很好。

这一行:

'@Url.Action("FetchMiniNoticiasFromPage", "Noticias")'

实际编译为:

'/Noticias/FetchMiniNoticiasFromPage'

【问题讨论】:

  • @Url.Action("FetchMiniNoticiasFromPage", "Noticias") 输出什么?
  • 你能不能把“@Url.Action("FetchMiniNoticiasFromPage", "Noticias")" 改成 '@Url.Action("FetchMiniNoticiasFromPage", "Noticias")'
  • @SKS:它仍然触发同样的错误。
  • 它是否进入了您的成功回调方法?你能设置一些警报来缩小范围吗?
  • IE 对任何单个错误都会发出呱呱叫声,所以我无法判断它何时触发。但是提示的错误消息说该行并且错误在 jQuery 文件本身内。这就是我感到困惑的原因。

标签: javascript jquery asp.net-mvc-3 internet-explorer


【解决方案1】:

它可能是嵌套的双引号,虽然我不能相信其他浏览器会让你侥幸逃脱:

url: "@Url.Action('FetchMiniNoticiasFromPage', 'Noticias')",

--或--

url: '@Url.Action("FetchMiniNoticiasFromPage", "Noticias")',

或者你正在尝试:

url: "@Url.Action("+FetchMiniNoticiasFromPage+", "+Noticias+")",

【讨论】:

  • 如果我错了,请纠正我,但我相信 @Url.Action("FetchMiniNoticiasFromPage", "Noticias") 会被 ASP 解析为字符串,因此浏览器将永远看不到此代码。
  • 这一行:'@Url.Action("FetchMiniNoticiasFromPage", "Noticias")' 实际上编译为:'/Noticias/FetchMiniNoticiasFromPage'
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-05-27
  • 2012-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-28
相关资源
最近更新 更多