0

我正在处理一个订阅脚本,我正在以休闲方式调用函数“onclick” <a onclick="subscribe_guest(434)" >subscribe</a>,如果我在不同的“订阅”链接上多次单击,我的问题就会开始,而不是运行$('#MyWatch').submit(function(){我调用的次数功能subscribe_guest(id)

例如我点击 <a onclick="subscribe_guest(434)" >subscribe</a><a onclick="subscribe_guest(14)" >subscribe</a>

以下代码将打印两次带有 id '14' 的警报

function subscribe_guest(id){
        $('#MyWatch-Wrap').html('');
                $(".wrappermywatch-guest").css({
                    top:$(window).scrollTop() +50,
                }).show();

    $('#MyWatch').submit(function(){
        alert(id);
        if(typeof email !== "undefined"){
            if(validateEmail(email)){
                            $.ajax({   
                                 ...
                                }   
                            });   
                            return false;  
            }else{
                                ...
            }
        }else{
              ...
        }
    }); 
}
4

1 回答 1

3

制作一个变量called = false;并让你的函数检查它是否在开始时被调用

function foo() {
    if (called) {
        return;
    } else {
        called = true;
    }
    //do stuff....
}
于 2013-06-13T15:01:49.540 回答