jQuery 多次点击 PNotify 按钮
jQuery PNotify button click fired multiple times
我有很多图片。单击其中任何一个都会打开 PNotify 弹出窗口。
PNotify 弹出窗口有一个带有文本字段和保存按钮的简单表单。单击该按钮时,它只是向单击的图像添加一段文本。
但是当我按下“保存”按钮时,它会多次附加文本并在每次点击后附加 +1,例如首先是 1,然后是 2,然后是 4,然后是 6 等等
$('#pic_wrapper').on('click', '.mark', function(e) {
var notice = new PNotify({
...
});
$('#text_form button[name=save]').on('click', function() {
$('#' + e.target.id).append('<p class="text">' + $.trim(
$('#input_text').val()) + '</p>');
notice.remove();
});
});
点击似乎触发了多次。我怎样才能阻止它并且每次点击只触发一次?
事件处理程序被多次附加,所以您遇到了问题。.off()
方法删除了使用 .on()
附加的事件处理程序。
$('#text_form button[name=save]').off().on('click', function() {
$('#' + e.target.id).append('<p class="text">' + $.trim($(
'#input_text').val()) + '</p>');
notice.remove();
});
我有很多图片。单击其中任何一个都会打开 PNotify 弹出窗口。
PNotify 弹出窗口有一个带有文本字段和保存按钮的简单表单。单击该按钮时,它只是向单击的图像添加一段文本。
但是当我按下“保存”按钮时,它会多次附加文本并在每次点击后附加 +1,例如首先是 1,然后是 2,然后是 4,然后是 6 等等
$('#pic_wrapper').on('click', '.mark', function(e) {
var notice = new PNotify({
...
});
$('#text_form button[name=save]').on('click', function() {
$('#' + e.target.id).append('<p class="text">' + $.trim(
$('#input_text').val()) + '</p>');
notice.remove();
});
});
点击似乎触发了多次。我怎样才能阻止它并且每次点击只触发一次?
事件处理程序被多次附加,所以您遇到了问题。.off()
方法删除了使用 .on()
附加的事件处理程序。
$('#text_form button[name=save]').off().on('click', function() {
$('#' + e.target.id).append('<p class="text">' + $.trim($(
'#input_text').val()) + '</p>');
notice.remove();
});