$.param()

このエントリーをはてなブックマークに追加

$.param()はオブジェクトや配列を、URLのパラメーターやAjaxリクエストのパラメーターに利用できる文字列に変換する為のメソッドです。

このメソッドはform要素をシリアライズするserialize()のベースとなるメソッドです。

次のようなオブジェクトを文字列に変換すると単純な文字列が生成されます。

var myObj = [
	{name:"first",value:"Rick"},
	{name:"last",value:"Astley"},
	{name:"job",value:"Rock Star"}
];

alert($.param(myObj));//"first=Rick&last=Astley&job=Rock+Star"

次のような複雑なオブジェクトを変換した場合はURLエンコードされた文字列が返ってきますのでJavaScriptのdecodeURIComponent()などを利用してデコードして利用する必要があります。

var myObject = {
  a: {
    one: 1,
    two: 2,
    three: 3
  },
  b: [1,2,3]
};
var recursiveEncoded = $.param(myObject);
var recursiveDecoded = decodeURIComponent($.param(myObject));
 
alert(recursiveEncoded);//a%5Bone%5D=1&a%5Btwo%5D=2&a%5Bthree%5D=3&b%5B%5D=1&b%5B%5D=2&b%5B%5D=3
alert(recursiveDecoded);//a[one]=1&a[two]=2&a[three]=3&b[]=1&b[]=2&b[]=3
jQuery 1.2.0での追加/変更

$.param()はjQuery の1.2.0で追加されたメソッドです

参考URL

jQuery.param() | jQuery API Documentation

登録日 : 2013年07月18日 最終更新日 : 2013年7月18日

同じカテゴリー(Utilities)のエントリー

検索

スポンサードリンク

バージョン

リファレンス