Jquery Serialize不仅仅适用于IE

有了这个,我列出了我的代码在所有浏览器中工作正常,但在IE中没有。 我搜索了堆栈溢出的解决方案仍然无法解决。 请有人帮我,请$(this).serialize()在IE中返回空

$('Form#UserTripSearch').live('submit',function() { $('#NavDetailHead12').html(HugeLoading);// for loader image alert($(this).serialize()); 

//需要返回=> type = 1&sortby = desc&status = paid&name = peter

  var fullurl = $(this).attr('action')+'/'+$(this).serialize(); fullurl1= fullurl.replace(/&/g, "/"); fullurl2= fullurl1.replace(/=/g, ":"); // fullurl2 => sitename.com/type:1/sortby:desc/status:paid/name:peter $.ajax({ type: "GET", url: fullurl2, data: "ajax=true", success: function(data) { $('#NavDetailHead12').html(data); } }); return false; }); 

HTML代码:

 
User Member Non Member .....

注意:我的HTML很好..

 $('Form#UserTripSearch').live('submit',function() { formdata = $(this).serialize(); alert( formdata); $('#NavDetailHead12').html(HugeLoading);// for loader image .......... ............. ................ 

尝试上面的代码它应该工作

您正在尝试在更换dom后序列化。 这应该是问题,因为目标数据不存在。 试试这个 :)

jquery在IE 10(标准/ Quirks模式)上有错误,.serialize()和.serizlizeArray()无法序列化表单数据。

 

修复是:

 var data = $("#showRole input").serialize(); 

使用div的id引用表单并序列化数据。

IE只是改变了DOM树,而jquery无法获取元素。

请在Fiddle Link中查看答案现在工作正常..