关于jQuery.ajax 进入success后,返回错误的问题,求各位大神帮助

longjuanfenge 2013-12-10 04:25:48
代码如下:
===========================================================
function Form(){
jQuery.ajax({
url: $("#Form").attr('action'),
data: $('#Form').serialize(),
type: "POST",
timeout: 30000,
success: function(msg)
{
console.log("ajax success");
console.log(msg);
}

========================================================
能进入success里面,但是我通过firebug的控制台,看到msg的内容是
{"ajaxResult":"fail","errorStack":"java.lang.NullPointerException\n\tat
,"msg":null}

好像是data的原因,但是又不太确定。
...全文
264 17 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
longjuanfenge 2013-12-16
  • 打赏
  • 举报
回复
果然数据问题。
longjuanfenge 2013-12-11
  • 打赏
  • 举报
回复
你的目标数据是怎样的格式。 --怎样得知目标数据的格式? 你现在的数据又是怎样的格式。 ?? 既然劳神了,就说明白点吧
zhjdg 2013-12-11
  • 打赏
  • 举报
回复
现在还有人用alert. 你的目标数据是怎样的格式。 你现在的数据又是怎样的格式。 只能空想。
longjuanfenge 2013-12-11
  • 打赏
  • 举报
回复
=========================================================== var data = $('#submitForm').serialize(); function Form(){ alert (data); jQuery.ajax({ url: $("#Form").attr('action'), data: $('#Form').serialize(), dataType:'json', type: "POST", timeout: 30000, success: function(msg) { if(msg.ajaxResult=='fail')alert('出错鸟'+msg.errorStack) else console.log("ajax success"); console.log(msg); } ======================================================== 获取表单数据,很多为空,且不是网页上填写的数据。 我先手动输入data试试。 等大神,提示更好的方法获取data
xuzuning 2013-12-11
  • 打赏
  • 举报
回复
alert($('#Form').serialize()); 检查一下表单数据是否取到 还需检查数据格式是否符合服务端要求
longjuanfenge 2013-12-11
  • 打赏
  • 举报
回复
$('#Form').serialize()获得data数据等号后为空造成的,也许不应该采取serialize()方式获取。
longjuanfenge 2013-12-10
  • 打赏
  • 举报
回复
论坛中看到 ‘一般的NullPointerException的问题都是在跳转页面去取值的时候得到的是null值’,怎么理解呢
longjuanfenge 2013-12-10
  • 打赏
  • 举报
回复
写一个提交单子的脚本。 我直接在网页上点击提交按钮,不会报错,为什么用脚本会报这个错误呢?
  • 打赏
  • 举报
回复
那不就是出错了,然后输出错误信息。楼主你到底要干嘛。。 NullPointerException
longjuanfenge 2013-12-10
  • 打赏
  • 举报
回复
=========================================================== function Form(){ jQuery.ajax({ url: $("#Form").attr('action'), data: $('#Form').serialize(), dataType:'json', type: "POST", timeout: 30000, success: function(msg) { if(msg.ajaxResult=='fail')alert('出错鸟'+msg.errorStack) else console.log("ajax success"); console.log(msg); } ======================================================== 结果是 出错鸟java.lang.NullPointerException
  • 打赏
  • 举报
回复
jQuery.ajax({ dataType:'json', url: $("#Form").attr('action'), data: $('#Form').serialize(), type: "POST", timeout: 30000,
longjuanfenge 2013-12-10
  • 打赏
  • 举报
回复
=========================================================== function Form(){ jQuery.ajax({ url: $("#Form").attr('action'), data: $('#Form').serialize(), type: "POST", timeout: 30000, success: function(msg) { if(msg.ajaxResult=='fail')alert('出错鸟'+msg.errorStack) else console.log("ajax success"); console.log(msg); } ======================================================== 加上楼主标红的判断代码, 1.控制台显示是 ajax success 2.还是报{"ajaxResult":"fail","errorStack":"java.lang.NullPointerException\n\tat ,"msg":null}
tony4geek 2013-12-10
  • 打赏
  • 举报
回复
版主说的很对。
longjuanfenge 2013-12-10
  • 打赏
  • 举报
回复
感谢各位大神和版主的回复,我现在就试试版主添加的判断。
  • 打赏
  • 举报
回复
你的动态页返回200状态,标准json格式字符串就不会执行error回调 至于你动态页加了try..catch容错配置客户端是扑捉不到的,你可以通过msg来判断 success: function(msg) { if(msg.ajaxResult=='fail')alert('出错鸟'+msg.errorStack) else console.log("ajax success"); console.log(msg); }
zhjdg 2013-12-10
  • 打赏
  • 举报
回复
一看就是data,你服务器就发出这个data,
allali 2013-12-10
  • 打赏
  • 举报
回复
这个是不ajax的错误 是后台代码出错了,只能在后台照原因。

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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