jquery 使用post进行提交,但返回的是404错误,这是啥情况呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery 使用post进行提交,但返回的是404错误,这是啥情况呢相关的知识,希望对你有一定的参考价值。

下面附上我写的代码
前提,在点击左边菜单栏里面的任意一个图标时,这个图片有连接地址,在点击图片的同时,跳转到另一个页面出现一个图片弹层说明层,下面是根据这个图片返回的一个地址,然后我用post来请求它的数据,但是这个post频繁的返回404错误,请各位大侠帮帮忙!
$('.mox_medal li').bind('click',function()
var id = $(this).attr('id').slice(1);
$.post('/apps/medal/api.php?do=Get&mid='+ id +'&format=json',function(data)
$('.explain_left p').eq(0).html('<img width="110" height="110" src='+a[id].img2+'>');
$('.explain_right p').eq(0).html(a[id].title);
$('.explain_right p').eq(1).html(a[id].desc);
$('.explain_right p').eq(2).html('任务名称:<a class="blue" href="/apps/task">'+a[id].title+'</a>');
if(data.code ==200)
$('#medal_dialog').show();
$('#medal_dialog').dialog();
$('.dialog_content').css("top","300px");
$('.dialog_content').css("margin-left","-110px");


)
return false;
)

jquery 使用post进行提交,但返回的是404错误,那一定是找不到资源,基本上是路径不对。 其实开发ajax应用,我建议你装个firefox的firebug,或者是用chrome自带的调试工具。

jquery中使用post方法提交数据时,返回404错误的解决方法:

1、jquery代码

2、解决办法;

在.htaccess中,修改apache的mod_rewrite,内容如下:

参考技术A 1.记录下发生404错误的链接;
2.在服务器端直接输出出现“错误”的链接的内容,看看可不可以;
3.如果不可以,说明是链接有问题;如果可以,检查jq发送的post请求,看看参数有没有被转义;
4.如上面都没问题,那就是服务器的连接有问题,不稳定本回答被提问者和网友采纳
参考技术B 404就是找不到页面呀,99%是路径写错了追问

是偶尔出错奥,不是一直出错,!

追答

可以肯定的是,如果是404错误,那一定是找不到资源,基本上是路径不对。

其实开发ajax应用,我建议你装个firefox的firebug,或者是用chrome自带的调试工具,一目了然。

用jquery的post方法提交数据需要servlet返回的数据类型是json的数据格式,应该怎么做??

我用就query的post的方法提交数据时,第四个参数设置成“json” 从服务器返回的数据有要求必须是什么格式的数据,jquery才能够解析成json数据格式,我是从服务器返回的一个string类型的数组,结果不行,还要用eval()解析一下才能是json数据格式的。

参考技术A 首先你要在servlet里在返回之前就要把返回的数据组装成json格式的字符串,在前台接收的数据就是json格式了,不需要再转的。我平时就是这样做的,没问题啊。追问

$.post()这个方法不是可以有四个参数吗!
$.post("请求地址",{传递参数},回调函数,返回的数据类型)
我在返回数据类型的地方写的“json”,然后从servlet返回的内容是["a","b","c"]这个样子的,可是不能正确解析成json数据格式的你说的那个貌似是$.ajax()这个方法吧。

追答

那是你返回内容的格式错了啊,json格式是这样的“key1”: “value1”, “key2”: “value2” 。

参考技术B 1.后台必须返回json类型的数据;你可以这样设置
response.setContentType(“text/x-json;charset=UTF-8”);
response.getWriter().write(text);
2.js调用这样写
$.post('url', p:'param', function(data)
alert(data);
,'json');//注意'json'必须小写

以上是关于jquery 使用post进行提交,但返回的是404错误,这是啥情况呢的主要内容,如果未能解决你的问题,请参考以下文章

Ruby on rails -- Jquery 在另一个 post 请求之前没有提交 put 请求

Mailchimp 通过 jQuery Ajax。正确提交,但 JSON 响应作为单独的页面返回

jquery的ajax提交后,会跳转页面

jquery中$.get()提交和$.post()提交有区别吗?

用jquery的post方法提交数据需要servlet返回的数据类型是json的数据格式,应该怎么做??

jquery post 怎么接受后台的多个参数