我每次点击我的按钮时都会运行jquery代码,但我只想让它在click函数内执行一次。否则我的jquery代码会在我的td td中复制值。
这是我的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 :(得分:2)
我不确定我是否理解正确,如果您只想执行一次处理程序,请尝试.one
$(function() {
$('#next-step').one('click', function() {
$('#S').append($('#1 option:selected').text());
$('#C').append($('#2').val());
$('#T').append($('#3').val());
});
});
或许您希望将值复制而不是附加,然后尝试如下,
$(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());
});
});
答案 1 :(得分: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());
});
});
答案 2 :(得分: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;
}
});
});