2011-05-02 77 views
0

我创建了一个jQuery的单击事件,以删除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浏览器正常工作。任何想法为什么发生这种情况?!是因为缓存!?

+0

什么是不工作?发生了什么不应该或者不应该发生的事情? – 2011-05-02 14:33:20

+1

不要太挑剔,但你会介意让这个坏男孩回到左边缘一点吗? :) – pixelbobby 2011-05-02 14:35:30

+0

什么没有发生:它不是从xml文件中删除特定项目,也没有显示和jquery ajax方法的错误消息。但在Mozilla中,它正确删除并显示#light id div。 – Maverick 2011-05-02 14:37:08

回答

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字符串进行非常严格的验证。这可能是相当无情的。

+0

感谢您的回应迈克,我已经检查了它...和JSON工作正常。而且它绝对不会在Mozilla Firebug中显示出错误,并且它在那里工作得很好。 – Maverick 2011-05-02 15:06:43

+0

我看到Chrome浏览器在其他地方的Firefox很不好。 Chrome有时会出现精神分裂症。 – 2011-05-02 15:34:46

+0

那么,有没有解决这个问题?我应该使用jQuery的其他方法吗? – Maverick 2011-05-02 15:41:43

0

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

这是一个在我正在开发的应用程序中工作的JSON对象的示例。

{ “DB”:{ “计数”: “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”] }} }

+0

我正在使用json.simple软件包。 – Maverick 2011-05-02 15:57:00