Javascript jQuery single。单击“限制”

Javascript jQuery single。单击“限制”,javascript,Javascript,我一直在构建一个移动应用程序,它扫描忠诚卡,并检查该卡是否已根据数据库注册。扫描条形码后,它会打开一个内部浏览器,该浏览器会通过发送到浏览器的URL(在URL末尾使用“?search=123456”)自动将条形码编号插入文本字段。然后js检查URL中是否有“#click_approved”(扫描后出现)。这会自动单击submit按钮并运行数据库检查,从而在注册时返回用户信息,或者告诉用户卡未注册。我已经完成了所有的工作,除了我有一个小问题,提交按钮不断被点击,好像js代码在循环。我不确定问题是在

我一直在构建一个移动应用程序,它扫描忠诚卡,并检查该卡是否已根据数据库注册。扫描条形码后,它会打开一个内部浏览器,该浏览器会通过发送到浏览器的URL(在URL末尾使用“?search=123456”)自动将条形码编号插入文本字段。然后js检查URL中是否有“#click_approved”(扫描后出现)。这会自动单击submit按钮并运行数据库检查,从而在注册时返回用户信息,或者告诉用户卡未注册。我已经完成了所有的工作,除了我有一个小问题,提交按钮不断被点击,好像js代码在循环。我不确定问题是在我的js中还是其他地方。感谢您的帮助


如果(document.URL.indexOf(“#click_approved”)>=0{
document.getElementById('approved_btn')。单击();
}
编辑:我应该指出,这会在
#btn_approved
上触发一个单击事件。与其触发似乎有自己的事件监听器的click事件,不如直接调用click事件正在调用的任何函数

如果您想在
#btn_approved
上收听一次点击事件:

var approveBtn = document.getElementById('approved_btn');
var isApproved = document.URL.indexOf('#click_approved') > -1;
var clicks = 0;
approveBtn.addEventListener('click', function () {
    if (isApproved && clicks === 0) {
        // do something
        clicks++;
    }
});

代码段中没有任何jQuery代码
var approveBtn = document.getElementById('approved_btn');
var isApproved = document.URL.indexOf('#click_approved') > -1;
var clicks = 0;
approveBtn.addEventListener('click', function () {
    if (isApproved && clicks === 0) {
        // do something
        clicks++;
    }
});