`

jquery serialize()

 
阅读更多

使用ajax时,常常需要拼装input数据为'name=abc&sex=1'这种形式,用JQuery的serialize方法可以轻松的完成这个工作。如:

<form id="form1">
<input name="name1" type="text" value="pipi" />
<input name="name2" type="radio" value="1" checked/>boy<input name="name2" type="radio" value="0"/>girl
<textarea name="name3">test</textarea>
</form>
使用:
$("#form1").serialize();
结果:
name1=pipi&name2=1&name3=test



但是有个问题,如果是下面的情况:



<form id="form1">


<input name="name" type="text" value="pipi" />

 

<input name="blog" type="text" value="blue submarine" />



</form>



使用:
$("#form1").serialize();
结果:
name1=pipi&blog=blue+submarine
就是如何能让+号变回空格呢?



还有一个问题,如下所示:



<form id="form1">


<input name="length" type="text" value="pipi" />

 

<input name="blog" type="text" value="blue submarine" />



</form>



使用:
$("#form1").serialize();
结果:
blog=blue+submarine



没法出现length=pipi



原因是length是js数组的属性关键字,出现冲突了,将name改为其他非冲突字符串即可
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics