如何得取$.post的返回值?

时间:2021-05-25 12:14:24

function update(response) {
output = '<ul class="List" >';
if(response.error!=1) {
data = response.data;
    for(var i = 0; i<=data.length;i++){
     output += '<li>';
     output += '<div class="text"><p><a href="http://test.com/?uid='+data[i].userid+'">'+data[i].username+'</a></p>';
     output += '<p class="explain">'+getStatusById(data[i].userid)+'<br /></p>';
     output += '</div>';
     output += "</li>";
    }
    output +='</ul>';
    $('#visitorList').html(output);
}
function getStatusById(uid) {
$.post("/test/status?format=json&assign=result", {'uid':uid}, function(data){
eval('rs = '+data);
alert(rs);
});
}


现在是问题是我得不到rs这个值,但是弹出的时候就可以显示这个值。在那个循环里面如何才能根据不现的ID显示不同的值?

13 个解决方案

#1


alert(rs)弹出的值如下:"hello"、"test"等等,都是字符串。

#2


还是不行。

#3


有人知道吗?指点一下啊

#4


这要看你返回的是什么数据了

alert(data);

如果返回的是一个串,如: ‘text’

那么alert(rs)当然是弹出text啊

#5


我再看看吧

#6


返回值的形式如下
result = [{"content":"\u5c0f\u6c88\u9633\u5f00\u6f14\u5531\u4f1a\u4e86\uff0c\u4f60\u4eec\u53bb\u53c2\u52a0\u4e0d\u3002"}] ;

#7


利用jquery的 result.content应该可以获取到吧。

#8


这个值我可以获取到,就是不能把这个值赋给<p class="explain"></p>,因为这个是在循环里面的,用document.getElementsByClassName('explain').innerHTML也无法赋值,如果在<p class="explain"></p>加一个<span id="data[i].userid"></span>用document.getElementById(data[i].userid).innerHTML话,有报错,说这个ID是空的。

#9


好高深啊!!!!!!!!!!!!

#10


期待高手出现,只要能解决马上给分啊

#11



$.post('',{},function(){},dataType);
//--------------
返回值类型
dataType:"json","html","text","script"
//--------------

#12


jQuery.post(url,[data],[callback])

post就三個參數,你爲什麽不用getJSON呢?

$.getJSON("/test/status?format=json&assign=result", {'uid':uid}, function(data){
        //這裡的data就是JSON數據
        alert(data.content);
    });

#13


已经找到解决问题的方法,谢谢大家回贴,回贴均得分。

#1


alert(rs)弹出的值如下:"hello"、"test"等等,都是字符串。

#2


还是不行。

#3


有人知道吗?指点一下啊

#4


这要看你返回的是什么数据了

alert(data);

如果返回的是一个串,如: ‘text’

那么alert(rs)当然是弹出text啊

#5


我再看看吧

#6


返回值的形式如下
result = [{"content":"\u5c0f\u6c88\u9633\u5f00\u6f14\u5531\u4f1a\u4e86\uff0c\u4f60\u4eec\u53bb\u53c2\u52a0\u4e0d\u3002"}] ;

#7


利用jquery的 result.content应该可以获取到吧。

#8


这个值我可以获取到,就是不能把这个值赋给<p class="explain"></p>,因为这个是在循环里面的,用document.getElementsByClassName('explain').innerHTML也无法赋值,如果在<p class="explain"></p>加一个<span id="data[i].userid"></span>用document.getElementById(data[i].userid).innerHTML话,有报错,说这个ID是空的。

#9


好高深啊!!!!!!!!!!!!

#10


期待高手出现,只要能解决马上给分啊

#11



$.post('',{},function(){},dataType);
//--------------
返回值类型
dataType:"json","html","text","script"
//--------------

#12


jQuery.post(url,[data],[callback])

post就三個參數,你爲什麽不用getJSON呢?

$.getJSON("/test/status?format=json&assign=result", {'uid':uid}, function(data){
        //這裡的data就是JSON數據
        alert(data.content);
    });

#13


已经找到解决问题的方法,谢谢大家回贴,回贴均得分。