这段代码有什么问题?

时间:2011-05-02 14:29:40

标签: jquery ajax firefox google-chrome click

我创建了一个jquery click事件来从xml文件中删除一些东西。代码如下:

$(".delete_engine").bind("click",function(){
    var del = $(this);
    var id = del.attr("id");
    var c = confirm("You sure want to delete this?");

    if(c)
    {
        /* $(this).next('.pclass').remove();
        $(this).prev('.rurl').remove();
        $(this).remove();*/
        $.ajax({
            type: "POST",
            url: "http://localhost:8080/cPEP_UI/Engine_engine_delete",
            data: "eid="+id,
            dataType: "json",
            success: function(data) {
                $('#light').html("<img src='loading.gif' alt='loading gif'/>");
                $('#light').css("display","block");
                $('#fade').css("display","block");
                if(data.update == "success"){
                    del.parent().next().remove();
                    del.parent().remove();
                    $('#light').html(data.message+" "+data.update);
                }
            },
            error:function(xhr,err){
                //alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
                alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
                $('.error').html("responseText: "+xhr.responseText);
            }
        }); 
    }
});

但事实是,它不使用谷歌浏览器,但与mozilla Firefox正常工作。关于为什么会发生这种情况的任何想法?!是因为缓存了吗??

2 个答案:

答案 0 :(得分:1)

你的罪魁祸首可能就在这里。我会检查你回来的JSON,看看它是否会返回你期望给定ID的结果。

if(data.update == "success"){
    del.parent().next().remove();
    del.parent().remove();
    $('#light').html(data.message+" "+data.update);
}

此外,您应该检查Javascript错误。当dataType设置为JSON时,jQuery的AJAX API对JSON字符串进行非常严格的验证。这可能是相当无情的。

答案 1 :(得分:0)

我在过去使用Chrome中的jQuery从JSON对象获取数据时遇到了问题。我的解决方案是确保正在解析的JSON是严格形成的。特别是,请确保所有键和值都用双引号括起来。

以下是在我正在处理的应用程序中工作的JSON对象的示例。

{“db”:{“count”:“4”,                  “记录” : {                  “124”:[“124”,“cooldood137”,“43.1922532075705,-76.2615720447455”],                  “345”:[“345”,“jillchill9”,“45.1922532075705,-78.2615720447455”],                  “987”:[“987”,“bobdabanka”,“43.4922532075705,-76.1615720447455”],                  “654”:[“654”,“foobarlounge”,“46.1922532075705,-79.2615720447455”],                  “674”:[“674”,“ohai!lolcat”,“56.1922532075705,-69.2615720447455”]                  }                 }                 }