2012-05-07 66 views
0

我有jQuery代碼,每次運行我每次點擊我的按鈕,但我只希望它做點擊函數內的東西一次..否則我的jQuery代碼將重複我的tbody td值。如何確保我的點擊函數只用Jquery執行一次?

這裏是我的jQuery代碼:

$(function() { 
     $('#next-step').click(function() { 
      $('#S').append($('#SubjectTypeName option:selected').text()); 
      $('#T').append($('#TeamName option:selected').text()); 
      $('#C').append($('#ConsultantName option:selected').text()); 
      $('#K').append($('#company option:selected').text()); 
      $('#KP').append($('#ContactPerson').val()); 
      $('#P').append($('#date').val()); 
     }); 

    }); 

這裏是的jsfiddle:http://jsfiddle.net/82U2W/

任何幫助表示讚賞。

在此先感謝!

+0

像這樣http://api.jquery.com/one/? – Jarry

回答

2

我不知道如果我理解正確的話,儘量.one如果你想只執行一次

$(function() { 
    $('#next-step').one('click', function() { 
     $('#S').append($('#1 option:selected').text()); 
     $('#C').append($('#2').val()); 
     $('#T').append($('#3').val()); 
    }); 
}); 

DEMO

或者,也許你想被複制的價值,而不是再追加處理嘗試像下面,

$(function() { 
    var copiedText = 'Copied Value: '; 
    $('#next-step').on('click', function() { 
     $('#S').text(copiedText + $('#1 option:selected').text()); 
     $('#C').text(copiedText +$('#2').val()); 
     $('#T').text(copiedText +$('#3').val()); 
    }); 
}); 

DEMO

+0

太棒了!它的工作完全符合.one – Obsivus

0

我想說的最簡單的方法是使用jQuery.one

$(function() { 
     $('#next-step').one('click', function() { 
      $('#S').append($('#SubjectTypeName option:selected').text()); 
      $('#T').append($('#TeamName option:selected').text()); 
      $('#C').append($('#ConsultantName option:selected').text()); 
      $('#K').append($('#company option:selected').text()); 
      $('#KP').append($('#ContactPerson').val()); 
      $('#P').append($('#date').val()); 
     }); 

    }); 
0

使用點擊時將控制按鈕的變量。

$(function() { 
    $('#next-step').click(function() { 
     if(cmdCtrl){ 
      $('#S').append($('#SubjectTypeName option:selected').text()); 
      $('#T').append($('#TeamName option:selected').text()); 
      $('#C').append($('#ConsultantName option:selected').text()); 
      $('#K').append($('#company option:selected').text()); 
      $('#KP').append($('#ContactPerson').val()); 
      $('#P').append($('#date').val()); 
     cmdCtrl=false; 
     } 
    }); 

});