【发布时间】:2014-08-22 03:05:12
【问题描述】:
我想在 AJAX POST 请求中序列化表单数据,并且
$("#formid").serialze() 不适合我。
有什么方法可以让我以更好的格式获得结果。目前 $("#formid").serialze() 给我的结果是
`poststring="csrfmiddlewaretoken=bb9SOkN756QSgTbdJYDTvIz7KYtAdZ4A&colname=SPORT&datatype=VARCHAR2&field_size=20&null_constraint=1&default_val=&colname=HELLO&datatype=VARCHAR2&field_size=20&default_val=&colname=JUDY&datatype=VARCHAR2&field_size=20&default_val=&tablename=&fsize=&preview_flag=`
我希望 POST 请求对象是
{"colname":[HELLO,JUDY,SPORT].......}
将多行表单输入作为数组(如果您知道我的意思)。
我曾想过解析 serialize() 的输出,但它可能有问题,并且可能会因复杂的列数据而中断。
我需要 POST 响应采用我提到的格式
【问题讨论】:
-
没有内置的...您必须编写自己的自定义序列化程序。但是,如果您展示您正在使用的标记以及您自己尝试过的内容的最小示例,您会得到更好的响应。如果您知道您所追求的名称(例如
colname),那么<form>.getElementsByName('colname')将为您提供一个可以从其开始的类似数组的节点列表。用你想要的数据创建一个对象,然后JSON.stringify那个。
标签: javascript ajax json django post