Php ajax代码,jquery返回false不工作。我试过其他答案
我编写了一个AJAX代码并链接了php文件,但是代码不接受Php ajax代码,jquery返回false不工作。我试过其他答案,php,jquery,ajax,Php,Jquery,Ajax,我编写了一个AJAX代码并链接了php文件,但是代码不接受返回false最后的函数。它把我带到行动文件。我的ajax代码 $("#submit").click( function() { var data = $("#form :input").serializeArray(); $.post($("#form").attr("action"), data, function(info) { $("#result").html(info);}); }); $("#form"
返回false代码>最后的函数。它把我带到行动文件。我的ajax代码
$("#submit").click( function() {
var data = $("#form :input").serializeArray();
$.post($("#form").attr("action"), data, function(info) { $("#result").html(info);});
});
$("#form").submit(function() {
return false;
});
myindex.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>
Ajax实践
名称
电子邮件
提交到数据库
我的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";
}
}
?>
您必须防止在单击功能中的第一部分代码中的默认提交操作
- 切勿将提交按钮命名为“提交”-它会替换/阻止表单。提交处理程序
更改
提交到数据库
到
提交到数据库
- 如果带有处理程序的JS位于头部或在它们访问的对象之前,则需要将处理程序包装在onload中-这里我使用
$(function(){…})代码>
- 标准方法是使用submit事件而不是click事件-它还保存一个处理程序:
要测试:
我想你的
#sumit is id for <input type="submit">
没有违约,做什么
#('#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;
});
我累了$(“#form”).on(“submit”,函数(e){var data=$(“#form:input”).serializeArray();$.post($(“#form”).attr(“action”),数据,函数(info){$(“#result”).html(info)};返回false;});现在仍在工作。它仍然带我到另一个php页面。您的脚本是否在外部文件中?希望您喜欢正确的jQuery cdn或文件,并且链接正确。是的,这是一个外部文件。我链接了正确的jquery文件。我查过了。你能查一下我的密码和建议吗?我试过了。它仍然带我到其他php文件。请更新您的问题。转到jsfiddle.net并添加相关的HTML。为了测试提交,您不能在这里使用代码段编辑器,因为它不允许提交。我们也可以使用JSFIDLE for php?不需要-您的主要错误是命名您的提交按钮“submitTried”更新的代码。这会将我带到新页面。f12上没有发现错误。它也停止更新我的数据库。new.php中有什么内容?
$('#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;
});