javascript - 如何确保我的单击函数仅使用 Jquery 执行一次?

标签 javascript jquery

我有每次单击按钮时都会运行的 jquery 代码,但我只希望它在单击函数中执行一次操作。否则我的 jquery 代码将在我的 tbody 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/

感谢任何帮助。

提前致谢!

最佳答案

我不确定我是否理解正确,如果您只想执行一次处理程序,请尝试 .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

关于javascript - 如何确保我的单击函数仅使用 Jquery 执行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10484947/

相关文章:

javascript - 我可以使用 AJAX 'POST' 将数据发布到服务器上的 JSON 文件吗?

javascript - JQuery - 鼠标离开

javascript - 获取 iframe 中 html 的鼠标悬停元素

javascript - jQuery photoResize 函数不起作用

javascript - 双击在 iPhone Safari 浏览器中不起作用

javascript - 在 HTML5 服务器发送事件中设置时间间隔

javascript - 如何使用jquery将结果放在最后

javascript - 使用 DataTables 的 <th> 属性指定列数据类型

jquery - 如何解决/破解 IE8 中半透明 PNG 褪色问题?

javascript - 无法在 Rails 5.0.0 中限制文件上传页面的重定向?