2017-02-09 6 views
2

だから私のコードは次のようなものです: - Jqueryどのボタン要素がPHPループ内でクリックされたjqueryを検出するには?

for($i=0;$i<$length;$i++){ 
?> 
<div id="scoreDiv"> 
    <input type="text" name="myscore" placeholder="Enter your score" required> 
    <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
    <input id="submitScore" type="submit" value="submit" > 
</div> 
<?php 
} 
?> 

私がクリックしたと私は、ユーザーが入力した入力フィールドを取りたいというボタンに基づいたボタンを検出します。

+1

使用 'クラス – guradio

+0

' ID 'とthis'コンテキスト'class'に変換してから' jquery this'を使う必要があります –

+1

それは働きました。たくさんありがとうございます –

答えて

2

あなたは、以下のようにそれを行うことができる(一例): -

$(document).ready(function(){ 
 
    $('.submitScore').click(function(e){ 
 
     e.preventDefault(); 
 
     alert($(this).prev().attr('name')); 
 
    
 
    }); 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="scoreDiv"> 
 

 
       <input type="text" name="myscore" placeholder="Enter your score" required> 
 
       <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
 
       <input class="submitScore" type="submit" value="submit" > 
 

 
     </div> 
 
<div id="scoreDiv"> 
 

 
       <input type="text" name="myscore1" placeholder="Enter your score1" required> 
 
       <input type="text" name="oppoScore1" placeholder="Your opponent score1" required> 
 
       <input class="submitScore" type="submit" value="submit" > 
 

 
     </div>

注: - idはindividual-として扱われながらclassがグループセレクタとして扱われますセレクタin Jquery。おねがいします

1

以下:

$(function(){ 
 

 
    $(".js-btn").on("click",function(){ 
 
     var btn = $(this); 
 
     var txtBoxes = btn.siblings('input'); 
 
     console.log($(txtBoxes[0]).val()); 
 
     console.log($(txtBoxes[1]).val()); 
 
    }); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="scoreDiv"> 
 
    <input type="text" name="myscore" placeholder="Enter your score" required> 
 
    <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
 
    <input id="submitScore" type="submit" value="submit" class="js-btn" > 
 
</div> 
 
<div id="scoreDiv"> 
 
    <input type="text" name="myscore" placeholder="Enter your score" required> 
 
    <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
 
    <input id="submitScore" type="submit" value="submit" class="js-btn" > 
 
</div> 
 
<div id="scoreDiv"> 
 
    <input type="text" name="myscore" placeholder="Enter your score" required> 
 
    <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
 
    <input id="submitScore" type="submit" value="submit" class="js-btn" > 
 
</div> 
 
<div id="scoreDiv"> 
 
    <input type="text" name="myscore" placeholder="Enter your score" required> 
 
    <input type="text" name="oppoScore" placeholder="Your opponent score" required> 
 
    <input id="submitScore" type="submit" value="submit" class="js-btn" > 
 
</div>

0

IDは、使用クラス属性の代わりにIDを一意にすると、コードの下に試してみてくださいので:

<head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
<script type="application/javascript"> 
    $(document).ready(function() { 
     $('.submitScore').on('click',function() { 
      var div_el = $(this).parent('.scoreDiv'); 
      var myscore = div_el.find('input[name="myscore"]').val(); 
      var oppoScore = div_el.find('input[name="oppoScore"]').val(); 

      alert(myscore+'----'+oppoScore); 
      return false; 
     }) 
    }); 
</script> 
</head> 





<?php 
for($i=0;$i<5;$i++){ 
?> 
<div class="scoreDiv"> 

<input type="text" name="myscore" placeholder="Enter your score" required> 
<input type="text" name="oppoScore" placeholder="Your opponent score" required> 
<input class="submitScore" type="submit" value="submit" > 

</div> 
<?php 
} 
?> 
関連する問題