我在这里查了很多关于同一问题的帖子,但没有任何工作,或多或少它的行为就像一个小故障:
function onbtnclick(){
var user_email=$('#user_email').val();
var send_data = {email:user_email};
$.ajax({
type: 'POST',
url: 'someURL.php',
crossDomain: true,
data:send_data,
dataType: 'text',
success: function(responseData, textStatus, jqXHR) {
alert("Thank you for the mailing list");
},
error: function (responseData, textStatus, errorThrown) {
alert('Your email is already in our mailing list.');
console.log('log e:'+responseData);
console.log('log e:'+textStatus);
console.log('log e:'+errorThrown);
}
});
return false;
}
};
<form name="myform">
<input id="user_email" type="email" name="email" placeholder="Your Email Here" style="width:300px" required><br>
<br><button type="submit" class="leka-button button-style2 offer_button" onclick="onbtnclick()"><h5>SIGN UP</h5></button>
</form>
如果用户是新用户,或者如果他注册了触发错误,我试图提醒正确的消息,我试图删除dataType:'text'或添加'json'和\以及删除crossDomain属性但都没有给我理由。 如果这很有用,here is where I fire the AJAX script.
答案 0 :(得分:0)
单击提交按钮时调用JavaScript。
JavaScript运行。 Ajax请求已准备好。 JavaScript完成了。提交按钮的默认行为提交表单。页面卸载。 Ajax请求已取消。提交定期表格。
删除onclick
属性。用JavaScript绑定事件处理程序。
$(function () {
var $form = $([name="myform"]); // `name` is obsolete for form elements, give it an ID instead
$form.on('submit', onbtnclick);
function onbtnclick(event) { // Give this function a better name
event.preventDefault(); // Don't submit the form normally
// Then put the rest of your existing code
}
});