我正在尝试将表单提交到PHP文件以调用查询并将表单详细信息提交到数据库中,但是我从stackoverflow中获取了这个AJAX代码并对其进行了调整,但它似乎以一种奇怪的方式工作,我和#39;我收到了当php页面返回时我应该收到的警告消息"成功" (据我所知)但PHP页面本身从未到达,我知道因为我添加了一个" die"那里。
所以这是我的简化形式:
<form role="form" id="promoProspectForm" type="post">
<div class="form-group">
<label for="name">Full name *</label>
<input name="name" type="text" class="form-control" id="name" placeholder="Enter your name" required>
</div>
<div class="form-group">
<label for="company">Company *</label>
<input name="company" type="text" class="form-control" id="company" placeholder="Enter your company's name" required>
</div>
<div class="form-group">
<label for="url">Website URL *</label>
<input name="url" type="text" class="form-control" id="url" placeholder="Enter your website URL" required>
</div>
<div class="form-group">
<label for="number">Contact number *</label>
<input name="number" type="text" class="form-control" id="number" placeholder="Enter your contact number" required>
</div>
...Some more inputs
</form>
这是我的AJAX代码,它包含在页脚的HTML页面中
$(function() {
$('#promoProspectForm').on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'php/submit-prospect.php',
data: $('#promoProspectForm').serialize(),
success: function() {
alert('form was submitted');
}
});
});
});
这是我的submit-prospect.php文件:
<?php
die("REACH");
if(isset($_POST) && !empty($_POST))
{
include_once(db.php);
$result = insert_prospect($_POST);
if(!$result)
{
return "fail";
}
else
{
return "success";
}
}
?>
我还怀疑我的php文件有错误的url因此我尝试更改它,基本上我的index.php在root上,ajax函数在js / ajax.js中,而php文件我&# 39; m试图访问是在php / submit-prospect.php中,所以为了简化它:
所以我尝试更改ajax中的URL以指向&#34; ../ php / submit-prospect.php&#34;但这也得到了同样的结果。
我做错了什么?感谢。
答案 0 :(得分:1)
$(function() {
$('#promoProspectForm').on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'php/submit-prospect.php',
data: $('#promoProspectForm').serialize(),
success: function(data) {
alert(data);
}
});
return false; // difference
});
});
return false
在功能“提交”表格中,取消html代码的提交动作动作 ..希望对此有所帮助。