Javascript 通过JS使用Ajax php文件提交表单
我正在尝试向数据库提交普通html表单:Javascript 通过JS使用Ajax php文件提交表单,javascript,php,jquery,ajax,forms,Javascript,Php,Jquery,Ajax,Forms,我正在尝试向数据库提交普通html表单: <form method="post" action="#" id="productForm" onsubmit="return submitProduct(this);"> 因此,有了上面的代码,我应该能够进入“form_modifications.php”脚本,对吗? 我还没有从表单中获取“data:values”(一旦我知道了如何获取,应该就可以了) 在form_modifications.php中,我有以下内容(我只是想测试一下):
<form method="post" action="#" id="productForm" onsubmit="return submitProduct(this);">
因此,有了上面的代码,我应该能够进入“form_modifications.php”脚本,对吗?
我还没有从表单中获取“data:values”(一旦我知道了如何获取,应该就可以了)
在form_modifications.php中,我有以下内容(我只是想测试一下):
我不明白为什么,但它不起作用。查询没有执行,我找不到我做错了什么。有人能帮我吗?我怀疑可能是ajax没有启动,因为您已经说过直接访问form_modification.php工作正常。因此,我只能建议您应该如何调试。从那里你会得到更多的线索 第1步:不要在Submit上使用html内联,所以请删除该代码
<form method="post" action="#" id="productForm">
...............
</form>
第三步:使用google chrome并单击inspect element,然后单击network选项卡。现在,通过填写任何输入,在浏览器中单击表单提交,然后查看post请求是否被推送
第4步:单击inspect元素的console选项卡,查看是否正在打印“我正在运行”。如果是,则提交事件正在工作。是否显示警报?表单是否提交(似乎没有任何东西阻止它?)。您能从PHP向成功处理程序返回一些东西吗?这一切都是为了找出问题到底出在哪里!首先,阻止默认提交,然后使用浏览器开发工具控制台和网络进行基本调试。检查实际的clues请求在这种情况下,它可能是require文件,您是否尝试直接转到表单_modification.php。它是否显示任何错误?感谢您的回复@madi我试过了,db连接一切正常。adeneo未显示任何警报。charlietfl您能解释一下默认提交是什么意思吗?我正试图找到更多的方法来测试它到底出了什么问题。你有没有检查过使用你的chrome inspect执行ajax?
chdir(dirname(__FILE__)."/../../..");
require_once("config/config.inc.php");
require_once("init.php");
$sql_test = "INSERT INTO ps_test_product (name) VALUES ('test');";
Db::getInstance()->query($sql_test);
<form method="post" action="#" id="productForm">
...............
</form>
$( "#productForm" ).submit(function( event ) {
console.log("I am running");
var values = $(this).serialize();
$.ajax({
url: "forms/ajax/admin/form_modifications.php",
type: "post",
data: values,
success: function (response) {
alert("Success");
},
});
});