【发布时间】:2015-06-01 15:06:08
【问题描述】:
我有这个 ajax 函数(参考下文)
$.ajax({
url: "processor.php",
type:"POST",
data: { 'id' : "itemid, 'itemname' : itemname, 'itemdesc' : itemdesc" } ,
success:function(e){
if(($.trim(e) == "success")){
alert("success");
}else{
alert(e);
}
},error:function(){
alert("critical error");
}
});
假设我已经有了 jquery 的链接脚本以及在 ajax 函数内部的 data 参数上声明的那些变量的内容。现在我有一个processor.php(参考下文)
//this is the processor php
echo "success";
所以基于上述参考,ajax 函数向 processor.php 提交一个 post 请求,然后 processor.php 将响应“成功”字符串,如声明的“回声成功”但发生的情况是它没有得到成功响应,而是弹出当前页面上的整个 html 标签(警报),为什么?任何想法、线索、推荐、建议将不胜感激。谢谢。
PS:我知道响应不成功,但为什么它会弹出(警告)当前页面中的整个 html 标签?
【问题讨论】:
-
我想发生了一些重定向。如果您直接在浏览器中访问
processor.php,会发生什么? -
成功回显“成功”。
-
你的 php 输出一个格式化的 html?发送一个带有“success”作为属性的ajax,并解析json(你不再需要修剪了)
-
在 processor.php 内部是 " 我使用 trim 只是为了让我得到准确的响应(成功),没有任何空格。
-
@cox:我什至去掉了装饰,只留下“alert(e);”但可悲的是,它给了我相同的弹出窗口(警报中的所有 html)
标签: javascript jquery ajax