gpt4 book ai didi

javascript - 为什么 "$.ajax({"会刷新?

转载 作者:行者123 更新时间:2023-11-30 07:00:26 25 4
gpt4 key购买 nike

我想通过 ajax 调用将电子邮件地址插入到我的数据库中。问题来了。它不是在后台工作,而是刷新页面。

alert("yea"); 未到达成功函数。

可能是什么问题?

$(document).ready(function() {
$("#header-subscribe").click(function(){
var str = $("#email").val();
if( validateEmail(str)) {

$.ajax({

url: 'php/signupForm.php',
type: 'GET',
data: 'email='+str,
success: function(data) {
//called when successful
alert("yea");
},
error: function(e) {
//called when there is an error
//console.log(e.message);
}

});

形式:

<form id="hero-subscribe" class="the-subscribe-form" >
<div class="input-group">
<input type="email" class="form-control" placeholder="Enter Your Email" id="email">
<span class="input-group-btn">
<button class="btn btn-subscribe" id="header-subscribe" type="submit">subscribe</button>
</span>
</div>
</form>

最佳答案

Ajax 调用与刷新无关。您有一个提交按钮,提交按钮的目的是提交表单。

最简单的解决方案是不使用提交按钮:

type="button"

但是,将事件处理程序绑定(bind)到按钮的单击事件并不是一个好的做法。因此,与其更改类型,不如将处理程序绑定(bind)到提交事件和 prevent the default action (正在提交表格):

$("#hero-subscribe").submit(function(event) {
event.preventDefault();
// ...
});

关于javascript - 为什么 "$.ajax({"会刷新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30946738/

25 4 0
文章推荐: java - 如何显示字符串数组?
文章推荐: javascript - 总结对象中的所有属性
文章推荐: javascript - 在 JavaScript 中使用带换行符的 ColdFusion 变量
文章推荐: javascript - 将