ajaxの際に form.serialize で一括送信できる件
今までバカな事していた。ajaxでpostとかgetする際に、いちいち各inputの値とかを取得していたんだけどそんなことしなくてもform.serializeで一発だった。
function postForm(btn) { $.ajax({ type: "post", url: "/test.php", data: $(btn.form).serialize() + '¶m=1', success: function(json) { // 成功時の処理 } }); }
html
<form> .. <input type="button" value="送信" onclick="postForm(this)" /> </form>
これでformの値をpostしてやるとphp側でうまく配列として取得できる。
serializeすると &xxx=xxx の形式になるため追加したいときはそれに従えばよい。
参考サイト
jQueryでフォームをAjax送信する際の基本パターンのチュートリアル。二重送信の防御とか。 | Ginpen.com