日期:2014-05-16  浏览次数:20698 次

JQuery 中$.ajax()总是返回error,求解
本帖最后由 partoneplay 于 2013-12-23 17:11:41 编辑

<form role="form">
<div class="form-group">
<label for="adminname"><?php echo $logFormI18N['adminname'];?></label>
<input type="text" class="form-control" id="adminname"">
</div>
<div class="form-group">
<label for="password"><?php echo $logFormI18N['password'];?></label>
<input type="password" class="form-control" id="password"">
</div>
<button id="bt1" class="btn btn-default"><?php echo $logFormI18N['submit'];?></button>
</form>
<button id="bt2"></button>



$(document).ready(function(){
$('#bt').click(function(){

$.ajax({
url : "./../system/login.php",
data : {name : “name”, sex : "sex"},
type : 'post',
dataType : 'html',
success : function(html, status){
alert(html);
alert(status);
},
error : function(a,b,v){
alert(a.status);
alert(a.readyState);
},
});
});
});

代码中#bt只是象征,测试时分别换为bt1,bt2测试

结果测试id为bt1的button运行ajax失败,走fail分支,而id为bt2的button运行成功走success分支;
谷歌开发者工具显示bt2为canceled;
搞不明白究竟是哪里出了问题;
求解释?
------解决方案--------------------
url : "./../system/login.php",

为什么是一个./啊?
------解决方案--------------------
第一检查路径 ./../system/login.php 。。 可以使用 /xxx/xxxx....

第二 浏览器直接访问login.php页面是否报错。

我觉得你可能是路径弄错了。
你可以将你的js 和 页面 放到同一目录试一试


------解决方案--------------------
建议用ff或者Chrome debug看看

------解决方案--------------------
用ajax时候不要用<button> 用<input type="button">