$('#myForm').submit(function() {
// get all the inputs into an array.
var $inputs = $('#myForm :input');
// not sure if you wanted this, but I thought I'd add it.
// get an associative array of just the values.
var values = {};
$inputs.each(function() {
values[this.name] = $(this).val();
});
});
Simon_Weaver氏からの情報により、
serializeArray
を使った別の方法を紹介します。なお、このスニペットは
<select multiple>
要素では失敗します。jQueryバージョン1.3では、new HTML 5 form inputsが
serializeArray
で動作しないようです。バージョン1.4+では動作します。| $('#myForm').bind('submit', function () {) var elements = this.elements; });
elements変数には、フォーム内のすべての入力、選択、テキストエリア、フィールドセットが格納されます。
連想法?ちょっとした工夫が必要ですが、汎用セレクタを使うことができます。