2016-11-22 7 views
-3

ちょっと私は2つの異なるスパンからクリックすると2つの値を取得しようとしています。私はベットスリップとベット数オッズを持っているいくつかのテーブルを持っています。私がやりたいことは、名前と賭け金を得て、それをjqueryの変数に格納してから、ベットスリップにプッシュします。私の唯一の問題は正しい値を得ることができないということです。ここではHTMLです:私は間違った値を取得しています2つの異なるスパンから2つの値を取得しようとしています

$(document).ready(function() { 
    $('#betslip, #betnum').click(function() { 
    var bet = $(this).text(); 
    var num = $(this).text(); 
    alert("name: " + bet + "num: " + num); 
    }); 


}); 

<td> 
    <a href="#" id="bet"> 
     <span id="betslip">Lautoka FC</span> 
     <span id="betnum"> 5/6</span> 
    </a> 
</td> 
<td> 
    <a href="#" id="bet"> 
     <span id="betslip">Draw</span> 
     <span id="betnum">11/5</span> 
    </a> 
</td> 

は、ここに私のjqueryのコードです。助けてくれてありがとう!

+0

? – claudios

+0

'var bet = $(this).text(); var num = $(this).text(); '両方の値は同じ値になります... –

+0

Lautoka FCをクリックすると同じ値Lautoka FC – TheTruth

答えて

0

は、クリックされた要素を参照します。両方の値が必要な場合は、再度要素を選択する必要があります。複数の組み合わせのシナリオが入って来た場合は、クラスを使用すること

例スニペット:。

$(document).ready(function() { 
 
    $('.bet').click(function() { 
 
    var bet = $(this).find(".betslip").text(); 
 
    var num = $(this).find(".betnum").text(); 
 
    console.log("name: " + bet + " num: " + num); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<td> 
 
    <a href="#" class="bet"> 
 
    <span class="betslip">Lautoka FC</span> 
 
    <span class="betnum"> 5/6</span> 
 
    </a> 
 
</td> 
 
<td> 
 
    <a href="#" class="bet"> 
 
    <span class="betslip">Draw</span> 
 
    <span class="betnum">11/5</span> 
 
    </a> 
 
</td>

+0

として両方の値が表示されます。私は、betslip idとbetnum idを使用する他のスパンを持っています。 – TheTruth

+0

idはHTML文書上で一意でなければなりません。同じIDを複数の要素に渡しても、ほとんどの場合、すべての要素ではなく最初の要素が返されます。クラス名はあなたの要求に合っています –

+0

私は何をするべきですか? – TheTruth

0

これはあなたを助ける、

$(document).ready(function() { 
    $('#betslip, #betnum').click(function() { 
     var id = $(this).attr("id"); 

     if(id == "betslip"){ 
      var bet = $(this).text(); 
      var num = $("#betnum").text(); 
     }else{ 
      var bet = $("#betslip").text(); 
      var num = $(this).text(); 
     } 
     alert("name: " + bet + "num: " + num); 
    }); 
}); 
0

.ATのような時間を試してみてください単一のをクリックするとelementが通過するだけです.2つの要素はありません

あなたは何を得るの値

$(document).ready(function() { 
 
    $('#betslip, #betnum').click(function() { 
 
    var bet = $('#betslip').text(); 
 
    var num = $('#betnum').text(); 
 
    alert("name: " + bet + "num: " + num); 
 
    }); 
 

 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<td><a href="#" id="bet"> 
 
    <span id="betslip">Lautoka FC</span> <span id="betnum"> 5/6</span></a></td>

関連する問題