0

したがって、同じHTML構造、クラス名、および属性を含む複数のdivがあります。出力する内容を除いて同じです。各divには、同じクラスの入力ボックスがあります。各入力ボックスの特定の値を取得するにはどうすればよいですか?「this」を使用すると思いますが、「this」を正確に使用して各テキストボックスの特定の値を取得する方法がわかりません。値の配列を出力するため、それぞれを使用したくありません。

<div>
    <input class="player-input" type="text"></input>
    <button class="enter">Enter</button>
    <p>Lorem Ipsum<p>
</div>

<div>
    <input class="player-input" type="text"></input>
    <button class="enter">Enter</button>
    <p>Lorem Ipsum<p>
</div>

私はMeteorjsを使用しており、イベントは次のように設定されています。

Template.players.events({
    'click .enter': function(){
          //code
    },
    'keydown .player-input': function(e){
        if (e.which == 13){
            //code
        }
    }
});

jQueryを使用して特定の各入力要素の値を取得するにはどうすればよいですか?

4

3 に答える 3

1

段落にそれぞれを追加する方法は次のとおりです。機能するかどうかを教えてください:http://jsfiddle.net/VtMRx/

$(".player-input").each(function() {
    //alert(this.value);
    $("#paragraphID").append(this.value + "<br/>");
});
于 2013-03-17T20:57:26.813 に答える
0

.closest を使用することもできます

説明: セット内の各要素について、要素自体をテストし、DOM ツリー内のその祖先をたどることによって、セレクターに一致する最初の要素を取得します。

http://api.jquery.com/closest/

$('.enter').click(function() {    
    var myVal = $(this).closest('.player-input').val();
    $(this).closest('p').html(myVal);
}):
于 2013-03-17T21:11:30.077 に答える
0

現在の構造では、 prev() が機能するはずです。

http://api.jquery.com/prev/

$('button.enter').click(function() {    
    var myVal = $(this).prev('input.player-input').val();
}):
于 2013-03-17T20:54:39.563 に答える