liaofeng_xiao 2010-06-01 16:39
浏览 345
已采纳

jquery ajax没响应

各位,使用jquery ajax post发送请求,请求参数(data)太长则后台接收不到请求。
如果将data改为“1234”等简单的参数,则发送成功。因此可以确定是参数的问题。
[code="html"]
$.ajax({
method:"POST",
url: ajaxRequestURL,
//data: "1234",
data: requestParams,
async: true,
cache: false,
dataType: "text"
});
[/code]
requestParams的格式为:
[code="html"]
var params="";
for(var i=0;i<phoneNumbers.length;i++){
params+="insertMemberDto.orders["+i+"].memberPhone="+tds[(i*7+0)]+"&"+
"insertMemberDto.orders["+i+"].memberName="+tds[(i*7+1)]+"&"+
"insertMemberDto.orders["+i+"].memberEmail="+tds[(i*7+2)]+"&"+
"insertMemberDto.orders["+i+"].memberPassword="+tds[(i*7+3)]+"&"+
"insertMemberDto.orders["+i+"].memberNumber="+tds[(i*7+4)]+"&"+
"insertMemberDto.orders["+i+"].memberUsualNumber="+tds[(i*7+5)]+"&"+
"insertMemberDto.orders["+i+"].memberProductId="+tds[(i*7+6)]+"&";
}

requestParams=params.slice(0,params.length-1);
[/code]
发送请求前alert出url和data,确定没有问题,直接在地址栏敲入url也没有问题,所以确定是请求参数data的问题。比较长,最大可达到1000个字符,按理说使用post发送也没什么问题...是字符格式吗?在firefox 看请求内容,各项参数也都正确,WHY?

请求达人相助!

  • 写回答

4条回答 默认 最新

  • myali88 2010-06-02 11:59
    关注

    [quote]
    [code="javascript"]
    $.ajax({
    method:"POST",
    url: ajaxRequestURL,
    //data: "1234",
    data: requestParams,
    async: true,
    cache: false,
    dataType: "text"
    });
    [/code]
    [/quote]
    你写错了,要设置“POST”请求,应该是:
    $.ajax({
    type:"POST",
    url: ajaxRequestURL,
    //data: "1234",
    data: requestParams,
    async: true,
    cache: false,
    dataType: "text"
    });
    [/code]
    所以,其实你上面的请求还是以GET方式发起的,GET请求的URL长度是有限的,大约2k吧。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置