Javascript HTML提交表单而不刷新页面和显示警告框
我想将表单提交到php,然后数据将更新到数据库,并显示警报框。 现在,数据已更新数据库,但警报框未显示。 我的代码有什么问题?? 谢谢 test.htmlJavascript HTML提交表单而不刷新页面和显示警告框,javascript,php,html,forms,alert,Javascript,Php,Html,Forms,Alert,我想将表单提交到php,然后数据将更新到数据库,并显示警报框。 现在,数据已更新数据库,但警报框未显示。 我的代码有什么问题?? 谢谢 test.html <!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> function SubmitFo
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
function SubmitForm() {
var category_id = $("#category_id").val();
var category_name = $("#category_name").val();
$.post("test.php", { category_id: category_id, category_name: category_name },
function(data) {
alert("Finish!");
});
}
</script>
</head>
<body>
<form action="test.php" method="post">
category_id: <input type="text" name="category_id" id="category_id"/>
category_name: <input type="text" name="category_name" id="category_name"/>
<input type="button" id="searchForm" onclick="SubmitForm();" value="Send" />
</form>
</body>
</html>
函数SubmitForm(){
var category_id=$(“#category_id”).val();
var category_name=$(“#category_name”).val();
$.post(“test.php”,{category\u id:category\u id,category\u name:category\u name},
功能(数据){
警报(“完成!”);
});
}
类别识别码:
类别名称:
test.php
<?php
$a = $_POST['category_id'];
$b = $_POST['category_name'];
$link = mysql_connect('localhost','root','');
mysql_select_db("fyp", $link);
$sql = "INSERT INTO category (CID, Category) VALUES (".
PrepSQL($a) . ", " .
PrepSQL($b) . ")";
mysql_query($sql);
function PrepSQL($value)
{
// Stripslashes
if(get_magic_quotes_gpc())
{
$value = stripslashes($value);
}
// Quote
$value = "'" . mysql_real_escape_string($value) . "'";
return($value);
}
?>
试试这个
function SubmitForm() {
var category_id = $("#category_id").val();
var category_name = $("#category_name").val();
$.post("test.php", { category_id: category_id, category_name: category_name })
.done(function(data) {
alert("Finish!");
});
}
文档尝试以下操作:
$.post("test.php", { category_id: category_id, category_name: category_name })
.done(
function(data) {
alert("Finish!");
}
);
你把三个参数放在那里,它应该是两个。您可以尝试以下方法:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
function SubmitForm() {
var category_id = $("#category_id").val();
var category_name = $("#category_name").val();
$.post("test.php", { category_id: category_id, category_name: category_name })
.done(function() {
alert("Finish!");
});
}
</script>
函数SubmitForm(){
var category_id=$(“#category_id”).val();
var category_name=$(“#category_name”).val();
$.post(“test.php”,{category\u id:category\u id,category\u name:category\u name})
.done(函数(){
警报(“完成!”);
});
}
祝你好运 试试这个解决方案
function SubmitForm() {
var category_id = $("#category_id").val();
var category_name = $("#category_name").val();
$.ajax({
type: "POST",
url: "test.php",
data: { category_id: category_id, category_name: category_name }
}).done (function() {
alert("Finish");
}).fail (function(status) {
console.log(status);
});
现在检查数据,看看出了什么问题。1)他使用的是按钮,而不是提交。2) 他的问题甚至不是抱怨重定向。use.done()获得成功,或.fail()获得失败的响应。为什么不使用$.ajax来配置所有参数?我是javascript/php的初学者,对ajax不太熟悉。user2108245查看下面的解决方案。。。。它只是一个简写符号,您可以使用多个选项进行自定义。例如,请查看try chaining.fail(function(){alert(“error”);})
,查看表单是否有错误。您的test.php页面上似乎没有正确完成某些内容-尝试实际向其发布变量(不使用ajax),并查看页面是否正确加载。我试图修改.php文件。但还是失败了…我想你可能真的需要在屏幕上写些东西来获得成功的回复,看看这个:谢谢。但还是没有出现。我试图添加一个.fail(),结果显示失败弹出窗口。是的,然后问题是响应对象没有返回成功。尝试控制台中的console.log(数据)失败。我正在编辑我的答案来做到这一点。