Webのjsonを遊ぶ(5)---フォームがserialize()メソッドで取得した値をjsonに変換する
944 ワード
formフォームにはserialize()メソッドがあり、フォームの値をシーケンス化できますが、jqueryが提供するこのメソッドは、データを次のようにシーケンス化します.a=1&b=2&c=3&d=4
jqueryはフォームデータをjsonにシーケンス化する方法を提供していないので、自分でカプセル化する必要があります.次に、コードとテストサンプルを提供し、jsファイルを書きます.
$.ajaxSetup({
contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
var DataDeal = {
// form $('#form').serialize() json
formToJson: function (data) {
data=data.replace(/&/g,"\",\"");
data=data.replace(/=/g,"\":\"");
data="{\""+data+"\"}";
return data;
},
};
使用方法:上のjsファイルをページにインポートしてから
var data=$('#addf').serialize();//
data= decodeURIComponent(data,true);//
var json=DataDeal.formToJson(data);// json