【问题标题】:Ajax of jQuery in IE 6 stops the whole scriptIE 6 中 jQuery 的 Ajax 停止了整个脚本
【发布时间】:2011-10-25 17:32:19
【问题描述】:

我正在尝试为 Ajax 使用一些 jQuery 代码,这些代码在 Firefox 或 IE 8+ 版本中运行良好,但我也需要在 IE 6 中工作,我有此代码用于切换并使用 Ajax

$(document).ready(function () {
        $("#S1").click(function 
            () {

            $("#t1").toggle("fast");
            $("#P1").toggle("fast");
            $("#S1").css("background-color", "White");
            var ID = $("#HiddenField1").attr("Value");
            var params = new Object();
            params.Key = ID;
            var myJSONText = JSON.stringify(params);
            $.ajax({
                type: "POST",
                url: "viewMessages.aspx/readen",
                data: myJSONText,
                contentType: "application/json",
                dataType: "json",

            });
        });
    });

当我尝试在 IE6 中运行这个时,它不会工作,在调试器中我得到 第 29 行: 错误:预期标识符、字符串或数字, (第 29 行将是我代码中 Ajax 函数的结尾)

我删除了一些代码来查看问题出在哪里,所以我改成这个:

$(document).ready(function () {
        $("#S1").click(function 
            () {

            $("#t1").toggle("fast");
            $("#P1").toggle("fast");
            $("#S1").css("background-color", "White");
            var ID = $("#HiddenField1").attr("Value");
            var params = new Object();
            params.Key = ID;
            var myJSONText = JSON.stringify(params);

        });
    });

这个现在切换,但我得到了错误 21号线。 错误:JSON 无法识别,

您认为问题出在哪里?如何在 IE6 中运行这样的代码? 我正在用 ASP.NET 开发

【问题讨论】:

    标签: jquery asp.net ajax json


    【解决方案1】:

    去掉数据类型后面多余的逗号。

     $.ajax({
        type: "POST",
        url: "viewMessages.aspx/readen",
        data: myJSONText,
        contentType: "application/json",
        dataType: "json"//,
    
     });
    

    此外,您不需要对数据组件进行字符串化,也不需要声明新对象。 可以是data:{'KEY':ID}, 要获取 id,只需使用:

    $("#HiddenField1").val();
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-10
    • 2012-04-09
    • 1970-01-01
    相关资源
    最近更新 更多