0

我目前在serialize()Internet Explorer 中使用 jQuery 方法时遇到问题,它在其他浏览器中运行良好。

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

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:对象不支持属性或方法序列化。

IE应该支持序列化吗?

4

1 回答 1

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.
}
于 2013-03-07T16:27:23.557 回答