您好,以下内容是关于jquery ajax的一个问题,麻烦帮忙看看!

在chrome的审查元素里我看到response headers里写的是Content-Type: text/html,但我明明在js里写了 contentType: "application/json",请问下为什么会产生这种情况呢?我看到返回的内容是那个页面,而不是json。。。。

我js那里写的是
$.ajax({
type: "POST", //访问WebService使用Post方式请求
contentType: "application/json", //WebService 会返回Json类型
url: "post.aspx/CategoryList", //调用WebService的地址和方法名称组合 ---- WsURL/方法名
data: '{"parentid":"' + parentid + '"}', //这里是要传递的参数,格式为 data: "{paraName:paraValue}",
dataType: 'json',
success: function (result) { //回调函数,result,返回值
if (result.d != "") {
addselect(parentid, result.d, '@@')
}
}
});

很想知道为什么会这样?有没有解决方法。。。或者我哪里写错了呢?或者说有什么调试方法可以知道错在哪里。。。。
为何都以为我是php的 我明明写了个url: "post.aspx/CategoryList",。。。。不过问题我已经自行解决了,只是.net版本的问题。。。。我之前用.net 2.0没效,换成其他版就ok了...

芜湖不芜
浏览 232回答 2
2回答

UYOU

response headers是取决于后台返回的,后台是Php的话,就设置header('Content-type: application/json'),js端的contentType是设置请求内容的(和type一样),如果你只想接收json数据的话应该设置accept

江户川乱折腾

你这是用php框架做返回的吧!CategoryList 这个函数运行的display()返回的是页面ajax接收的就是这个个页面所以你应该在单独做一个ajax json返回 函数 只返回字符串
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java
JQuery