2017-02-15 10 views
0

で一度しか動作しません。JQueryのクリックイベントは、<tr>

今のところ、テーブルからすべてのtrで動作しています。これ以降は一度だけ動作するはずです。

$("#example tbody tr").on("click", function() { 
    $(this).addClass('row-selected');    
}) 
+2

変更 '.on()'(.one 'へ)' – j08691

+0

あなたはワンクリックを欠けています1行につき1回、またはテーブルを1回クリックするだけですか?後者の場合は '.one'は動作せず、残りのクリックを解除する必要があります(下の私の答えを参照) – Pete

答えて

4

あなたはあなたの最初のクリック後クリックイベントをバインド解除する必要があります。

var tr = $("tr"); 
 
tr.one("click", function() {    // this means that you can only click each row once 
 
    $(this).toggleClass('row-selected'); 
 
    tr.off('click');      // this will unbind the click event from the rest of the rows 
 
})
.row-selected td { 
 
    font-weight: bold; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
    <tr> 
 
    <td>one</td> 
 
    </tr> 
 
</table>

0

これを試してください。

$("#example tbody tr").one("click", function() { 
    $(this).addClass('row-selected');    
}) 
2

oneの代わりonで試してみてください。あなたのクリックイベントコールバック内部onehttp://api.jquery.com/one/

("#example tbody tr").one("click", function() { 
    $(this).addClass('row-selected');    
}) 
0

についてのより多くのあなたがイベントを削除することができます。イベントをパラメータとして渡すだけです。

$("#example tbody tr").on("click", function(event) { 
    $(this).addClass('row-selected'); 
    event.target.onclick = null; 
}) 
0
// Try This 
jQuery(document).ready(function(){ 
$(document.body).on("click", '#example tbody tr', function() { 
    $(this).addClass('row-selected');    
}); 
}); 
0

(一つに "クリック" に変更してみてください(

を "クリック" 以下

$("#example tbody tr").one("click", function() { 
$(this).addClass('row-selected');    
})code here 

またはあなたがこのページにbind unbind

をチェックしてみてくださいしてみてください

リンク先のサイトで使用している例を示します。

$('#my-selector').bind('click', function() { 
    $(this).unbind('click'); 
    alert('Clicked and unbound!'); 
}); 
+0

バインドとアンバインドはv3で廃止予定です - オンとオフを使用してください – Pete

関連する問題