【发布时间】:2013-05-14 21:23:01
【问题描述】:
下面的 ajax 脚本没有向 php 发送数据,页面只是重新加载,表单输入值被传递到 url。
脚本
<script>
$("#addProducts").submit(function(event) {
var str = $("addProducts").serialize();
event.preventDefault();
$.ajax({
type: "POST",
url: "subAddProduct.php",
data:str
})
});
</script>
HTML 表单
<form enctype="multipart/form-data" id="addProducts">
...
</form>
【问题讨论】:
-
在 jquery 中查看手册以获取 ajax
-
.submit()提交表单。请改用.click()。 Docs -
尝试将
event.preventDefault()放在您的str变量声明之上? -
将提交按钮的类型从“提交”更改为“按钮”,然后在“onclick”事件中调用该函数
-
另外,您的表单序列化不正确...应该是
var str = $("#addProducts").serialize();- 缺少表单 ID 中的#