在Internet Explorer中jQuery序列化错误

时间:2013-03-07 16:22:18

标签: jquery ajax

我目前正在使用带有Internet Explorer的jQuery方法serialize()出现问题,它在其他浏览器中运行良好。

首先,我将表单存储在变量中。

var oForm = document.forms["couponForm"]; 

然后我将它序列化并将其作为参数传递给ajax调用。

new Ajax.Request(sURL, { asynchronous : false, method : 'post',
                parameters : oForm.serialize(true),
                onComplete : function(p_oRequest){

                },
                onException : function(p_oRequest, p_oException) {
                    throw p_oException;
                },
                onLoaded : function() {}
                });

但是,我在Internet Explorer控制台中收到错误。

SCRIPT438:object不支持属性或方法序列化。

序列化是否应该被IE支持?

1 个答案:

答案 0 :(得分:2)

表单应命名为 couponForm

<form action="" method="post" name="couponForm">
</form>

请检查请求中是否有逗号(,)。完成最后一项后,一定不能有任何逗号。它严格检查Internet Explorer。

在最后一项

之后不要使用逗号
{ 
asynchronous : false, 
method : 'post',
parameters : oForm.serialize(true),//Dont use comma here
}

请勿使用逗号

{ 
asynchronous : false, 
method : 'post',
parameters : oForm.serialize(true)//The last item must not be ended with a comma.
}