Return false在我的jqueryajax帖子中不起作用,它将发送到我的php文件
对不起,各位(糟糕的是,我实际上没有包括jquery库。。。 对不起,我现在很累 有人能告诉我我的代码有什么问题和/或缺失吗?返回false不起作用…下面的代码有冲突吗Return false在我的jqueryajax帖子中不起作用,它将发送到我的php文件,php,jquery,ajax,Php,Jquery,Ajax,对不起,各位(糟糕的是,我实际上没有包括jquery库。。。 对不起,我现在很累 有人能告诉我我的代码有什么问题和/或缺失吗?返回false不起作用…下面的代码有冲突吗 html <form class="login-form" method="POST" action="loginauthenticate.php"> <fieldset> <h3>WELCOME!</h3> <div id="get
html
<form class="login-form" method="POST" action="loginauthenticate.php">
<fieldset>
<h3>WELCOME!</h3>
<div id="get_content"></div>
<p>
<input class="username" type="text" name="username" placeholder="Username" autocomplete="off" required/>
<br>
<input class="password" type="password" name="password" placeholder="Password" required/>
<br>
</p>
<input id="register" class="login-button" type="submit" value="Log In" />
</fieldset>
</form>
<footer>
<P>© 2016 ACT Students,Thesis</P>
</footer>
在ajax工作之前尝试将return设置为false
$('form').submit(function() {
return false;
$.ajax({
data: $(this).serialize(),
type: $(this).attr('method'),
url: $(this).attr('action'),
success: function(data) {
$('#get_content').html(data);
}
});
});
这可以防止默认设置,Ajax也会触发。请重试
<script type="text/javascript">
$(document).ready(function() {
$('form').submit(function() {
$.ajax({
data: $(this).serialize(),
type: $(this).attr('method'),
url: $(this).attr('action'),
success: function(data) {
$('#get_content').html(data);
}
});
return false;
});
});
</script>
$(文档).ready(函数(){
$('form')。提交(函数(){
$.ajax({
数据:$(this).serialize(),
类型:$(this.attr('method'),
url:$(this.attr('action'),
成功:功能(数据){
$('get#u content').html(数据);
}
});
返回false;
});
});
您需要使用event.preventDefault()
并在submit(函数(事件)中添加event
变量
。事件参数来自事件绑定函数。这是阻止元素的默认操作发生的标准方法。换句话说,如果调用此方法,则不会触发事件的默认操作
return false;
在调用它时执行3个独立的操作:
1.event.preventDefault();–它停止浏览器的默认行为
2.event.stopPropagation();–它防止事件传播(或“冒泡”)DOM
3.停止回调执行并在调用时立即返回
preventDefault();
做了一件事:它停止浏览器的默认行为
那么什么时候使用它们呢?这完全取决于你想完成什么。如果你想“仅仅”使用preventDefault()防止默认浏览器行为。如果要防止默认浏览器行为并防止事件传播DOM,请使用return false;。在大多数情况下,如果要使用return false,则真正需要的是preventDefault()
$(文档).ready(函数(){
$('form')。提交(函数(事件){
event.preventDefault();
$.ajax({
数据:$(this).serialize(),
类型:$(this.attr('method'),
url:$(this.attr('action'),
成功:功能(数据){
$('get#u content').html(数据);
}
});
});
});
你可以尝试event.preventDefault()
我替换了return false to event.preventDefault(),但是,它在我身上不起作用..你说的“它不起作用”是什么意思?它在这里对我来说就像预期的那样起作用。你对javascript使用单独的js文件吗?如果你这样做,Ajax调用将不会触发:(对不起,各位..:(我的错,我实际上没有包括jquery库……很抱歉:3我现在非常疲惫。我刚刚尝试过。在这里,它对我有用,使用了他的相同代码。Jayrex,你是否包括jquery库。这是一个糟糕的问题,但这是此代码不起作用的唯一可能性。我很抱歉大家(我的错是,我实际上没有包括jquery库……很抱歉:3我现在非常疲惫。
<script type="text/javascript">
$(document).ready(function() {
$('form').submit(function() {
$.ajax({
data: $(this).serialize(),
type: $(this).attr('method'),
url: $(this).attr('action'),
success: function(data) {
$('#get_content').html(data);
}
});
return false;
});
});
</script>
<script type="text/javascript">
$(document).ready(function() {
$('form').submit(function(event) {
event.preventDefault();
$.ajax({
data: $(this).serialize(),
type: $(this).attr('method'),
url: $(this).attr('action'),
success: function(data) {
$('#get_content').html(data);
}
});
});
});
</script>