ajax代码,jquery返回false不工作。尝试其他答案
问题描述:
我写了一个AJAX代码并链接了php文件,但代码在最后不接受return false;
函数。它将我带到行动档案。我的Ajax代码ajax代码,jquery返回false不工作。尝试其他答案
$("#submit").click(function() {
var data = $("#form :input").serializeArray();
$.post($("#form").attr("action"), data, function(info) { $("#result").html(info);});
});
$("#form").submit(function() {
return false;
});
我的index.php代码
<?php
include('new.php');
?>
<!DOCTYPE html>
<html>
<head>
<title>Ajax practice</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script type="text/javascript" src="ajax.js"></script>
</head>
<body>
<form action="new.php" method="post" id="form">
<label>Name</label><br>
<input type="text" name="name"/><br>
<label>Email</label><br>
<input type="Email" name="email"/><br>
<button type="submit" name="submit" id="submit">submit to database</button>
</form>
<span id="result"></span>
</body>
</html>
我的PHP文件
<?php
$con = mysqli_connect("localhost","root","","ajax") or die ("couldnt connect to database.");
if (isset($_POST['submit'])) {
global $con;
$title = $_POST['name'];
$email = $_POST['email'];
$insert_user = "INSERT INTO ajax (title, email) VALUES ('$title', '$email')";
$run_user = mysqli_query($con,$insert_user);
if ($run_user) {
echo "Success";
} else {
echo "Failed";
}
}
?>
答
NEVE [R名的提交按钮“提交” - 它取代/块form.submit处理
变化
到<button type="submit">submit to database</button>
如果JS与处理程序是在头部或他们访问对象之前,你需要用的处理器在一个onload - 在这里我用
$(function() {....});
典型的方式是使用提交事件,而不是点击事件 - 这也节约了处理:
测试:http://plungjan.name/SO/testajax/testajax.html
$(function() { // when page loads
$("#form").on("submit",function(e) {
e.preventDefault(); // cancel submit
$.post($(this).attr("action"), $(this).serialize(), function(info) {
$("#result").html(info);
});
});
});
答
你必须防止在代码第一部分是在点击提交的默认操作功能
答
我觉得你
#sumit is id for <input type="submit">
因此,当你做
$('#submit').click(function() {});
没有的preventDefault做
#('#form').submit(function() {
Return false;
} //think this for your form
你违反你的代码。你告诉它做与不做,所以它混淆
我劝你
$('#form').on("submit", function() {
$.ajax({//ajax code});
Return false;
)};
尝试此代码
$('#submit').click(function() {
var data = $('#form').serialize();
$.ajax({
type: "POST",
url: "ajaxsubmit.php",
data: data,
cache: false,
success: function(result){
alert(result);
}
)};
return false;
});
里面是什么new.php? – mplungjan