我在我的页面上使用了两个脚本,并且有一个常规点击功能,记录一个用户所做的点击次数。因此,当我单击文档中的任何元素时,应运行click函数,之后运行同一元素上的其他函数。但就我而言,在将控件传递给另一个函数之前,click函数会运行多次。
/************ 1st Jquery Script ***************/
function($) {
$(function(e) {
$('.signupCustom').click(function(){
var email = $('#form-email').val()
var password = $('#pass').val()
var firstName= $('#form-first-name').val()
var lastName= $('#form-last-name').val()
var number= $('#form-mobile').val()
var type=$('#sel1').val()
$.ajax({
url: '/login',
type: 'GET',
data: {
'email': email,
'password':password,
'firstName':firstName,
'lastName':lastName,
'number':number,
'type':type
},
success: function(data){
if ($('#sel1').val() == "Travel-Agent"){
window.location.href = "/agentVerification.html"
}
else{
window.location.href = "/dashboardTraveller"
}
}
})
})
$('.login').click(function(){
var email = $('#form-username').val()
var password= $('#form-password').val()
$.ajax({
url: '/loginCustom',
type: 'GET',
data: {
'email': email,
'password':password
},
success: function(data){
window.location.href = data['url']
}
})
})
$('.destinationsButton').click(function(){
var url="/destinations";
window.location=url;
})
}); })(jQuery);
我已将链接附加到包含第二个脚本的html页面。
如果你去这个链接,有一个图像:
当我点击“登录”按钮时,点击功能会在控制转到其他功能之前多次运行。我希望click函数单次运行,然后控制应转到其他函数。
我尝试e.stopPropagation
但是如果在同一页面上弹出窗口,则弹出窗口无法打开。点击登录,点击弹出窗口。
答案 0 :(得分:2)
你有没有理由使用下面的内容?
color()
我认为这可能会更好用
jQuery('*').on("click",function(e){});
祝你好运
答案 1 :(得分:0)
我不知道你被困在哪里,但你可以使用one来运行点击功能一次:
$(selector).one('click',function(){
//code runs only one click
});