jquery – .serialize()和.serializeArray()之间有什么区别?

前端之家收集整理的这篇文章主要介绍了jquery – .serialize()和.serializeArray()之间有什么区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试将表单发送给控制器。 jQuery文档说.serializeArray()应该发送一个json数组,而.serialize()应该创建一个查询字符串。

但是,当我尝试并使用IE9 F12模式进行检查时,它们看起来像一个查询字符串,在这两种情况下。有人叫我做…

我失踪了什么

解决方法

serializeArray创建一个数组(不是一个“json数组” – 没有这样的东西);你可以用console.log($(“#myform”)。serializeArray())来测试这个。另一方面,serialize创建一个查询字符串,该字符串是HTTP请求的一部分。在使用适当代码的情况下,两个表示都是等效的,您可以将其转换为另一个,而不会有歧义。

两个版本可用的原因是,当您只想要发出HTTP请求(只是将结果放在查询字符串中)时,serialize更方便,而如果要自己处理结果,serializeArray更方便。

jQuery的AJAX方法不关心如果你给他们一个或另一个,因为它们检测到参数的类型,并将其转换成一个查询字符串,如果它不是一个已经存在,所以请求在观察者之外是不能告诉原始格式的参数。

猜你在找的jQuery相关文章