通过getJSON发送请求,回调函数如何提取返回数据

你条草 发布于 2012/08/24 09:58
阅读 2K+
收藏 0
发送请求的代码
                        phoneNumber="1";
pwd="1";
registerUrl = registerUrl + "register.jsp?phonenumber=" + phoneNumber + "&pwd=" + pwd + "&callback=?" ;
alert( registerUrl ) ;
var $j = jQuery.noConflict();
$j.getJSON(
registerUrl,
function getResult(data) {

alert("注册返回的回调函数");
//var count = data.length; 
str=data;
alert( str );
}
);

通过浏览器直接访问地址的话,返回的数据是

getResult([ { u_id:1}] );getResult

想提取u_id,以及对应的值,不知道怎么搞……应该很简单的,但就是不会





以下是问题补充:

@你条草:回调函数里面的data,直接通过alert输出,为[object Object] (2012/08/24 10:23)
@你条草:后面,问过服务器端的响应是如何的了……最后返回的操作 <% String callback = request.getParameter("callback"); …… out.print(callback+"([ { u_id:"+u.getId()); out.print("}] );"); out.print(callback); %> (2012/08/24 13:52)
加载中
0
开源中国首席攻城师
开源中国首席攻城师
data.u_id , 貌似是这样写的。可以拿到里面的值
你条草
你条草
返回值是NaN……无效值吧
0
leo108
leo108

var re = eval('('+data+')');

alert(re.u_id);

ObjNotFoun
ObjNotFoun
正解
leo108
leo108
回复 @你条草 : 出什么错?自己调试下不就知道了
你条草
你条草
运行出错了,没有响应
0
JustForFly
JustForFly

通过浏览器直接访问地址的话,返回的数据是{ u_id:1}才是对的吧,

你为什么返回的是 getResult([ { u_id:1}] );getResult ?

你条草
你条草
也对……反正我手写地址的时候callback=getResult,就返回之前我写的那个,而实际上通过页面来响应的话,返回的数据data,就只是中间部分的数据
0
hylent
hylent
$.getScript()
0
leo108
leo108
console.log(data)一下,看看到底是什么
0
sxgkwei
sxgkwei
如果 返回是: [ { u_id:1}] ,则data[0].u_id,如果是: { u_id:1},则 data.u_id
返回顶部
顶部