【发布时间】:2014-03-05 02:49:21
【问题描述】:
我不知道我在 ajax 调用中做错了什么。我想将数据返回到我的脚本并使用它,但它不返回结果。这里有一些我想澄清的事情,以及我是 ajax 编程的新手。如果 ajax 调用成功并将结果返回给脚本。结果将在脚本中的哪个位置。我是否必须创建一个保存结果的数组或... 这是html
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" id="reserveform">
<div id="response"></div>
<div>
<label>Name</label><input type="text" name="name" id="nameid">
</div>
<div>
<label>Phone Number</label><input type="text" name="phone" id="phoneid">
</div>
<div>
<button type="submit" class="btn" id="btnsubmit">Submit</button>
</div>
</form>
<div id="success"></div>
//my script
$('#btnsubmit').click(function(e){
e.preventDefault();
var nameid = $('#nameid').val();
var phoneid = $('#phoneid').val();
var validate_msg = '';
if (nameid == ''){
validate_msg = '<p> Name is Required. </p>';
}
if (phoneid == '' || ($.isNumeric(phoneid) == false)){
validate_msg += '<p> Phone field is either empty or non numeric. </p>';
}
if (validate_msg != ''){
$('#response').addClass('error').html('<strong>Please correct the errors below </strong>' + validate_msg);
} else {
var formData = $('form #reserveForm').serialize();
submitForm(formData);
}
});
function submitForm(formData){
$.ajax({
type: 'POST',
url: 'reservation.php',
data:formData,
dataType:'json',
success: function(data){
$("#success").html(data);
},
error: function(XMLHttpResponse, textStatus, errorThrown){
$('#success').removeClass().addClass('error').html('<p>There was an ' + errorThrown + ' due to ' + textStatus + 'condition');
}
});
}
【问题讨论】:
-
如果您的 PHP 文件 (
$_SERVER['PHP_SELF']) 的名称是reservation.php,请参阅下面的答案以获取解决方案。 -
这个问题的解决令您满意吗?如果是这样,请接受答案以关闭问题。否则,请发布更多信息,以便我们为您提供进一步帮助。