2013-08-12 86 views
0

我正在使用一個腳本,在我的按鈕(被點擊)所在的tr之後添加一個新行()。 我不想讓SAME按鈕產生多個tr。這裏是腳本:按鈕沒有多次發生事件

<script> 

$(function() { 
     var done; 
     $('table.listtable td input.selectseat').click(function() { 

      if(done) return; 
      done = true; 
      $(this).parent().parent().after('<tr class="seating"><td colspan="6"></td></tr>'); 
     }); 
    }); 

</script> 

但proiblem是,我有這些按鈕的sequesnce,什麼這個腳本做的是,它沒有讓我產生一排從另一個按鈕我有一個從生產後一排一個按鈕。 明確地說,我有一系列的行,每個行都有相同的按鈕,稱爲「選擇席位」。我希望每個按鈕不應該產生多於一個按鈕,但是我們可以點擊每個不同的按鈕並同時產生一行,這不會發生。

的陳述書:

if(done) return; 
      done = true; 

加入防止按鈕點擊已,不產生任何更多的行,但是經過點擊它不是產生一個新行的所有所有的按鈕。 請幫忙。

+0

使小提琴... –

+0

在按鈕上使用jquery .one(),你只需要一次點擊。 – maverickosama92

回答

3

這就是one的用途。

$('table.listtable td input.selectseat').one('click', function() { ... }); 
+0

感謝您的答覆,@遞歸,現在工作。但是你是否也可以告訴我,我如何使用相同的.one()方法獲得之前的效果,即只需點擊一下,無論有多少個按鈕? –

+0

我提供的代碼應該適用於整個文檔中的所有匹配元素。 – recursive