【发布时间】:2019-02-25 13:57:06
【问题描述】:
当我单击一个按钮时,我想在单击后再次自动单击它,例如 4 次。所以基本上你把它开火5 次。我有一个这样的代码来检索它应该被点击的数字。
$(document).ready(function() {
var clickedTimes;
$( "form" ).change(function() {
clickedTimes = jQuery('input#cfwc-title-field').val();
});
$('#single_add_to_cart_button').on('click', function(event){
if ((clickedTimes-1)==0) {
return;
}
clickedTimes -=1;
console.log(`Click-Event triggered ${(5-(clickedTimes))} times.`);
$( "#single_add_to_cart_button" ).trigger( "click" );
});
});
例如clickedTimes = 5
点击下方的添加到购物车按钮后,它应该会再次自动触发4 次,因为我自己触发过一次。
【问题讨论】:
-
您的代码没有点击事件。您的表单
change事件是否在按钮单击时触发...?无论如何,答案可能只是初始化一个n大小的for循环来触发其中的事件。 -
首先,问题中的代码似乎与您要问的内容无关。其次,这是一个非常奇怪的要求,但将
click事件下的逻辑放入它自己的函数中并调用 N 次而不是伪造可能导致其他问题的多个事件会更有意义。更好的是,将逻辑放在一个你调用一次然后循环 N 次的函数中。也许如果您能告诉我们您为什么觉得有必要这样做,我们可以提供更好的选择。 -
你开过一次?那么点击按钮会触发表单中的“onchange”事件吗?然后只需在 for 循环中执行 $("form").trigger('change') 即可。还是我误解了你的问题?
-
编辑了我的问题,所以触发器应该在这个问题中循环 5 次。怎么办?
-
你必须确定真正改变的是表单域cfwc-title-field
标签: javascript jquery function