gpt4 book ai didi

javascript - event.preventDefault();仅在某些时候适用于提交表单

转载 作者:行者123 更新时间:2023-12-03 11:18:17 25 4
gpt4 key购买 nike

我正在使用 Mailchimp API 提交表单。目标是防止 Mailchimp 提供的默认回调。大多数情况下,event.preventDefault() 都按其应有的方式运行。然后随机就不起作用了:

$(function () {
var $form = $('#mc-embedded-subscribe-form');
$('#mc-embedded-subscribe').on('click', function(event) {
if(event) event.preventDefault();
register($form);
});
});

function register($form) {
$.ajax({
type: $form.attr('method'),
url: $form.attr('action'),
data: $form.serialize(),
cache : false,
dataType : 'json',
contentType: "application/json; charset=utf-8",
error : function(err) { alert("Could not connect to the registration server. Please try again later."); },
success : function(data) {
if (data.result != "success") {
// Something went wrong, do something to notify the user. maybe alert(data.msg);
var message = data.msg
var messageSh = data.msg.substring(4);
if (data.msg == '0 - Please enter a value' || data.msg == '0 - An email address must contain a single @') {
$('#notification_container').html('<span class="alert">'+messageSh+'</span>');
} else {
$('#notification_container').html('<span class="alert">'+message+'</span>');
}
} else {
// It worked, carry on...
var message = data.msg;
$('.popup-promo-container').addClass('thanks');
$('.checkboxes, #mc_embed_signup_scroll').addClass('hidden');
$('.complete-promo').html(message).removeClass('hidden');
setTimeout(function() {
document.querySelector('.popup-promo').style.display = "none";
},20000);

}
}
});
}

最佳答案

尝试

  1. 起飞准备功能。
  2. 如果有事件则删除

代码:

var $form = $('#mc-embedded-subscribe-form');

$('#mc-embedded-subscribe').on('click', function(event) {
event.preventDefault();
register($form);
});

关于javascript - event.preventDefault();仅在某些时候适用于提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27239039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com