Jquery 如何从serialize()获取单个值

Jquery 如何从serialize()获取单个值,jquery,Jquery,我有一个表单,我使用jQuery.serialize获取表单的值;例如,为了获取表单数据,我使用以下命令 var formData = $('form').serialize(); 现在,变量formData保存以下值 subcategoryname=aaaa&prefix=AA&categoryid=1 从上面的字符串中,我只想获取categoryid的值,即这里的1,我如何使用jQuery来实现这一点?您可以通过将&和子拆分为= 或者以这个插件为例: 也许你应该在序列化之

我有一个表单,我使用jQuery.serialize获取表单的值;例如,为了获取表单数据,我使用以下命令

var formData = $('form').serialize();
现在,变量formData保存以下值

subcategoryname=aaaa&prefix=AA&categoryid=1

从上面的字符串中,我只想获取categoryid的值,即这里的1,我如何使用jQuery来实现这一点?

您可以通过将&和子拆分为=

或者以这个插件为例:


也许你应该在序列化之前访问该字段,然后你就不需要反序列化了。我认为你应该使用.serializeArray使它成为一个对象,这样访问起来就容易多了。

使用它不是更容易吗:

$'input[name=categoryid]'.val


或者这不是一个选项?

如果您只需要表单的一个值,为什么要使用.serialize?
您可以使用

是,但是不能通过该表单中的ajax提交。可以通过ajax表单提交。至少我一直这么做。来自jquery文档的报价:要发送到服务器的数据。如果尚未转换为字符串,则会将其转换为查询字符串。它被附加到GET请求的url。请参阅processData选项以防止此自动处理。对象必须是键/值对。如果value是一个数组,jQuery会根据下面描述的传统设置的值,用相同的键序列化多个值。是的,我只是想知道jQuery是否提供了任何我想要的本机函数,否则我使用的是$'form input[name=categoryid]':第二种方法更好,它还应该修复URL编码。我已经在使用它了,我只是想知道是否有其他选择: