Jquery的 ajax方法 一直交付不到后台去 救急高了一天了
Jquery的 ajax方法 一直提交不到后台去 救急。高了一天了。
var postdata = {
"userrealname": $("#userrealname").val(),
"usersex": $("input[name='usersex']").val(),
"usercards": $("#usercards").val(),
"province": $("select[name='province']").val(),
"city": $("select[name='city']").val(),
"district": $("select[name='district']").val(),
"detailaddress": $("#detailaddress").val(),
"usertel": $("#usertel").val(),
"salesmodel": $("input[name='salesmodel']").val(),
"shophttp": $("#shophttp").val(),
"userpostcode": $("#userpostcode").val(),
"userinstancy": $("#userinstancy").val(),
"userhometel": $("#userhometel").val(),
"userfax": $("#userfax").val(),
"useremail": $("#useremail").val(),
"userqq": $("#userqq").val(),
"userbank": $("#userbank").val(),
"accountbank": $("#accountbank").val(),
"bankname": $("#bankname").val(),
"toprovider": $("#toprovider").val(),
"shopname": $("#shopname").val(),
"shopcountry": $("select[name='shopcountry']").val(),
"shopprovince": $("select[name='shopprovince']").val(),
"shopcity": $("select[name='shopcity']").val(),
"shopdistrict": $("select[name='shopdistrict']").val(),
"shopaddr": $("#shopaddr").val(),
"usershoptel": $("#usershoptel").val(),
"shop_area": $("input[name='shop_area']").val(),
"checks[]": $("input[name='checks[]']").val(),
"userpassword": $("#userpassword").val(),
"date": new Date().getTime()
};
$.ajax({
type: "POST",
url: "/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx",
data: postdata,
contentType: "application/json; charset=utf-8",
dataTpye: 'json',
success: function (msg) {
var i = parseInt(msg);
if (i > 0) {
window.location.href = "/WorkShow/Registration/ShopkeeperRegistThree.aspx?usersextend=" + msg;
} else {
alert("添加失败!");
}
},
error: function () {
alert("出错了!!!");
}
});
没有调用success回调函数,路径没有错误。求解答啊
------解决思路----------------------
/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx
1. ashx里设置断点了么?
2. 你使用的是相对路径,改成绝对路径试试,比如 http://localhost:13323/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx
有可能是你调用ajax的页面所在的路径和WorkShow并不在一起。
------解决思路----------------------
那么多数据,为何不试一下:$("form").serialize() 呢?
------解决思路----------------------
LZ可以在ASHX里设置断点,看服务器是否已经响应。AJAX如果没有提交,LZ看下是否直接进入ERROR了?是的话,同样可以设置断点,看下错误信息
------解决思路----------------------
你在发AJAX之前 获取数据之后 弹一个alert 看看有执行到那没
如果执行了 按F12 看看有没有脚本错误
------解决思路----------------------
在ShopkeepRegist.ashx打断点调试,看看有没有成功返回数据
------解决思路----------------------
那你逐步alert,看看是哪一步出错了,我估计是你取值的时候,有错误!
------解决思路----------------------
1。检查你的URL链接是否正确,方法地址栏中 项目名 加 URL
2。URL参数后面加上a=new Date().getTime() 确保URLA每次不同,不被浏览器缓存
3。你的AJAX请求是放在超链接里面吗,既<a href=# onclick=fun() > fun函数放的ajax请求,如果是把超链接中的onclick去掉,fun方法放到href里面
------解决思路----------------------
你意思进了后台,执行了添加,但是没执行success?不可能吧。msg没东西?后台写的Response.Write("1");?
------解决思路----------------------
没执行success? 是不是你就没有返回啊?不过弄出来了 就恭喜了
------解决思路----------------------
这样的话,估计是JS AJAX的参数有问题。
你可以排除法一下。先检查URL(换一个试试,或者确认URL是否有效),然后检查data,之后再看其他的参数。
检查的话,把相关的参数注释即可
var postdata = {
"userrealname": $("#userrealname").val(),
"usersex": $("input[name='usersex']").val(),
"usercards": $("#usercards").val(),
"province": $("select[name='province']").val(),
"city": $("select[name='city']").val(),
"district": $("select[name='district']").val(),
"detailaddress": $("#detailaddress").val(),
"usertel": $("#usertel").val(),
"salesmodel": $("input[name='salesmodel']").val(),
"shophttp": $("#shophttp").val(),
"userpostcode": $("#userpostcode").val(),
"userinstancy": $("#userinstancy").val(),
"userhometel": $("#userhometel").val(),
"userfax": $("#userfax").val(),
"useremail": $("#useremail").val(),
"userqq": $("#userqq").val(),
"userbank": $("#userbank").val(),
"accountbank": $("#accountbank").val(),
"bankname": $("#bankname").val(),
"toprovider": $("#toprovider").val(),
"shopname": $("#shopname").val(),
"shopcountry": $("select[name='shopcountry']").val(),
"shopprovince": $("select[name='shopprovince']").val(),
"shopcity": $("select[name='shopcity']").val(),
"shopdistrict": $("select[name='shopdistrict']").val(),
"shopaddr": $("#shopaddr").val(),
"usershoptel": $("#usershoptel").val(),
"shop_area": $("input[name='shop_area']").val(),
"checks[]": $("input[name='checks[]']").val(),
"userpassword": $("#userpassword").val(),
"date": new Date().getTime()
};
$.ajax({
type: "POST",
url: "/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx",
data: postdata,
contentType: "application/json; charset=utf-8",
dataTpye: 'json',
success: function (msg) {
var i = parseInt(msg);
if (i > 0) {
window.location.href = "/WorkShow/Registration/ShopkeeperRegistThree.aspx?usersextend=" + msg;
} else {
alert("添加失败!");
}
},
error: function () {
alert("出错了!!!");
}
});
没有调用success回调函数,路径没有错误。求解答啊
------解决思路----------------------
/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx
1. ashx里设置断点了么?
2. 你使用的是相对路径,改成绝对路径试试,比如 http://localhost:13323/WorkShow/Registration/Ajaxpage/ShopkeepRegist.ashx
有可能是你调用ajax的页面所在的路径和WorkShow并不在一起。
------解决思路----------------------
那么多数据,为何不试一下:$("form").serialize() 呢?
------解决思路----------------------
LZ可以在ASHX里设置断点,看服务器是否已经响应。AJAX如果没有提交,LZ看下是否直接进入ERROR了?是的话,同样可以设置断点,看下错误信息
------解决思路----------------------
你在发AJAX之前 获取数据之后 弹一个alert 看看有执行到那没
如果执行了 按F12 看看有没有脚本错误
------解决思路----------------------
在ShopkeepRegist.ashx打断点调试,看看有没有成功返回数据
------解决思路----------------------
那你逐步alert,看看是哪一步出错了,我估计是你取值的时候,有错误!
------解决思路----------------------
1。检查你的URL链接是否正确,方法地址栏中 项目名 加 URL
2。URL参数后面加上a=new Date().getTime() 确保URLA每次不同,不被浏览器缓存
3。你的AJAX请求是放在超链接里面吗,既<a href=# onclick=fun() > fun函数放的ajax请求,如果是把超链接中的onclick去掉,fun方法放到href里面
------解决思路----------------------
你意思进了后台,执行了添加,但是没执行success?不可能吧。msg没东西?后台写的Response.Write("1");?
------解决思路----------------------
没执行success? 是不是你就没有返回啊?不过弄出来了 就恭喜了
------解决思路----------------------
LZ可以在ASHX里设置断点,看服务器是否已经响应。AJAX如果没有提交,LZ看下是否直接进入ERROR了?是的话,同样可以设置断点,看下错误信息
现在是直接进入error回调了,进入error之后又进入了后台添加数据。
火狐是这样的,IE的是执行了success回调。
这样的话,估计是JS AJAX的参数有问题。
你可以排除法一下。先检查URL(换一个试试,或者确认URL是否有效),然后检查data,之后再看其他的参数。
检查的话,把相关的参数注释即可