0

単一のページに n 個のフォームがあり、共通のクラスと属性が各フォームに添付されているため、jQuery によって提供されるformからa を取得する方法を知りたいです。submit callbackmanydata-id

data-idこれと、このコールバックでの入力を取得する必要がありformます。それ以外の方法ではできません。なぜなら、それらには cummon クラスがあるだけだからです。

私はそのようなものを探しています:

$('form.many').submit(function(e) {
        console.log($(this).data('id')); //Desn't work
        console.log($(this).serializeArray()); //Desn't work
        return false;
    });

HTML

<form class="many" data-id="1">
  <textarea>TEST_1</textarea>
</form>

<form class="many" data-id="2">
  <textarea>TEST_2</textarea>
</form>

//...

テキストエリアのコンテンツを取得する方法を取得しますか[]?$(this).serializeArray();

4

3 に答える 3

0

このフィドルを見てくださいhttp://jsfiddle.net/sarfarazdesigner/6CvU7/ HTML コードに間違いがあると思います。

<form>
<div><input type="text" name="a" value="1" id="a" /></div>
<div><input type="text" name="b" value="2" id="b" /></div>
<div><input type="hidden" name="c" value="3" id="c" /></div>
<div>
<textarea name="d" rows="8" cols="40">4</textarea>
</div>
<div><select name="e">
<option value="5" selected="selected">5</option>
<option value="6">6</option>
<option value="7">7</option>
</select></div>
<div>
<input type="checkbox" name="f" value="8" id="f" />
</div>
<div>
<input type="submit" name="g" value="Submit" id="g" />
</div>
</form>

$('form').submit(function() {
console.log($(this).serializeArray());
return false;
});
于 2013-04-26T05:03:04.693 に答える
0

これはまったく役に立ちますか?

var data = {};
$.each($('form.many').serializeArray(), function(i, field) {
   data[field.name] = field.value;
});
于 2013-04-26T05:01:58.960 に答える