如果至少点击一次其他任何按钮,我只想调用loadNext()
方法一次。
我已检查过:Calling a Method Once
例如,我正在制作一个测验应用,为每个问题类型提出问题和一些选项。
用户将选择一个选项并按下下一个按钮以加载下一个问题(带选项),(这些是在数组中预定义的)。即使多次单击选项,也不应多次调用loadNext()
(为了防止这种情况,我避免在那些选项(按钮)的onclick方法中调用loadNext()
,如果没有,也不会加载选择了选项,
我的想法类似于将isClicked
预定义为false
,并在这些选项的onclick方法内部进行反转,但这不起作用。
到目前为止我做了什么:
var optButtons = $(".opt button");
var isClicked = false;
optButtons.click(function () {
isClicked = true;
console.log("clicked on opt buttons: " + this.id);
console.log("Current button is: " + this.id + " set as active");
//other stuffs
});
//some other stuffs
if (isClicked) {
console.log("Clicked once!");
//other stuffs
loadNext();
} else {
alert("Please select an option");
//browser is alerting very first time after opening `index.html` file
// and Next button click isn't working after that
}
任何指示都将受到赞赏,在此先感谢! 我是JS的新手。
答案 0 :(得分:1)
假设您的“下一步”按钮有id="next"
$("#next").on('click',function(){
if(isClicked){
loadNext();
// Set isClicked to false to reset mechanism
isClicked = false;
}
});
这会是你'重新寻找?我这样理解
答案 1 :(得分:0)
//function called on clicking the next button
function abcd(){
counter++;
if(counter!=-1){
return;
}
else{
//call the loadnext()
}
}
答案 2 :(得分:0)
我猜你有单选按钮的答案。您可以尝试“单选按钮”选项。网上有足够多的参考资料。如果这不符合您的要求,请告诉我。