Response.End() 由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式...

cheesd2 2013-02-01 03:42:26
用juqery做ajax界面 js代码
$.ajax({
url: "ajaxpage/sysgoodsserver.aspx",
data: { "action": "getthisgoods",
//备注
"id": id
},
type: "POST",
contentType: "application/x-www-form-urlencoded;charset=utf-8",
dataType: "json",
// timeout: 8000,
async: false,
cache: false,
//调用失败
error: function(e) {
alert("服务器响应失败!");
},
//成功回调函数
success: function(data) {
databind(data.recods[0]);

}
});
return false;
}
服务器页代码:

string dlid = Convert.ToString(Request.Form["DLID"]);
string jsonstr = SysBLLGoodsServer.getgoodsxlforjson(dlid);
Response.Write(jsonstr);
Response.End();
Response.Close();
此页面有其他类型的响应 Response.End(); 没报错 唯独这个方法时报错 json格式验证过没错
网上说把 Response.End(); 改为 HttpContext .Current .ApplicationInstance .CompleteRequest ():
确实不报错 但是用360浏览器 用HttpContext .Current .ApplicationInstance .CompleteRequest (): 或
Response.Flush (): 是 $.ajax 都会返回错误事件(IE,搜狗等都能正常运行)
求解
...全文
174 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyl8781697 2013-02-01
  • 打赏
  • 举报
回复
Response.End();就够了吧 i应该Response.Close();是不需要的 LZ在aspx上面有啥头部之类的影响了json LZ可以用firebug来调试下 看看ajax请求过去返回的内容是什么,针对事实找对策,如果你头部还有其他东西就是必错无疑的
jeff1129 2013-02-01
  • 打赏
  • 举报
回复
360浏览器不靠谱,我这也有很多只有360才会出现的错误

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧