Php Ajax请求返回失败
我已经编写了一个小脚本来发出Ajax请求。为此,我使用jQuery。我已经这样做了好几次,但这是我第一次收到失败消息。这是我的剧本:Php Ajax请求返回失败,php,jquery,ajax,Php,Jquery,Ajax,我已经编写了一个小脚本来发出Ajax请求。为此,我使用jQuery。我已经这样做了好几次,但这是我第一次收到失败消息。这是我的剧本: $(document).ready(function(){ $("#btnExecute").click(function(){ var numberOfClusters = $('#inputNumCab').val(); alert(numberOfClusters); $.ajax({
$(document).ready(function(){
$("#btnExecute").click(function(){
var numberOfClusters = $('#inputNumCab').val();
alert(numberOfClusters);
$.ajax({
type: "POST",
url: 'RunPythonThroughPHP/insertData_2.php',
//data: { numberOfClusters: numberOfClusters },
success: function(msg){
alert('thanks');
},
error: function(){
alert("failure");
}
});
});
});
概念如下。当我按下按钮(以表单的形式)时,我得到一个文本字段的值(基于id),然后我将该数据传递到我的ajax请求中。问题是我收到了故障警报。
为什么会发生这种情况?如果我的请求不是异步的(async:false),那么它就会工作。当服务器响应的HTTP代码不是
200
时,就会发生这种情况。这意味着错误在insertData_2.php
文件中。您需要检查网络选项卡以查找错误消息(或检查服务器日志)并调试该脚本,而不是jQuery。谢谢您的回答。我的表单按钮是否也是提交类型?它应该是另一种类型吗?在这种情况下,最佳做法是挂接到表单的submit()
事件,但是它不会影响AJAX请求。您的PHP中仍然存在一个问题。您可以通过使用jq preventDefault来防止,或者在Submitt调用的函数中返回false。听起来可能会有一些单独的事情发生,但我认为上面的评论中主要解决了这些问题。。。然而,我注意到的另一件小事是,在您的示例中,数据参数被注释掉了。按原样,insertData_2.php将不会获得numberOfClusters的值。也许PHP脚本需要设置该值(并导致非200返回状态)?