1

私はプログラミングが初めてで、このコードは少し混乱しています。タイプがテキストのすべての入力フィールドを選択している行が各フィールドをループすることはわかっています。

では、なぜそれを使用しているのかというと$(this)、それはすでに選択を行っているからです。これはすべてテキスト型の入力フィールドでした。

$('#combine').click(function() {
    var combined_text = "";
    $('input[type="text"]').each(function() {
        combined_text += $(this).val() + ' ';
    });
    alert(combined_text);
});
4

5 に答える 5

4

ドキュメントから直接

.each() メソッドは、DOM ループ構造を簡潔にし、エラーを起こしにくくするように設計されています。呼び出されると、jQuery オブジェクトの一部である DOM 要素を反復処理します。コールバックが実行されるたびに、0 から始まる現在のループ反復が渡されます。さらに重要なことに、コールバックは現在の DOM 要素のコンテキストで起動されるため、キーワード this は要素を参照します。

通常の DOM 要素ではなく jQuery オブジェクトにアクセスするには、$(this) を使用します。

ここにいくつかの良い説明があります

于 2013-07-16T08:48:24.007 に答える
1

each()コールバック関数内でthisは、jQuery でラップされた要素ではなく、dom 要素を参照します。

したがって、jQuery メソッドにアクセスする必要がある場合は、 を使用してラップする必要があります$(this)

あなたが言うならthis.value、それはループ内の要素の値を与えるでしょう

于 2013-07-16T08:47:57.840 に答える
1

関数を使用する.eachと、一致した要素のループが開始されます。

$(this)、一致した要素のグループに属する現在の要素を参照します!

于 2013-07-16T08:48:40.647 に答える
0

eachですjQuery loop function。したがって、each一致するすべての要素内で、jQuery の個々のオブジェクトが考慮されます。を使用する場合は使用JavaScriptできますthis.valueが、ここで遊んでいるのでjQueryフォローする必要があります。に変わるからです。:)jQuery rules.valjQuery functionobject value$(this)$thisjQuery Object

in JavaScript we can get object value by 'this.value();' in loop

in jQuery we can use above code but right baby is '$(this).val();'

于 2013-07-16T09:05:19.397 に答える
-1

$(this) を使用して $('input[type="text"]') ==> 段落内のすべての入力テキストを取得する

于 2013-07-16T08:52:06.970 に答える