用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2835|回复: 3
收起左侧

[已解决] jQuery中json数据显示的奇怪问题!

[复制链接]
发表于 2010-7-28 15:08:37 | 显示全部楼层 |阅读模式
js代码:
JS复制代码
 
function selectcls(selvalue){
 var valuesplit=selvalue.split(',');
 setcookie('cid',valuesplit[0]);
 setcookie('cname',valuesplit[1]);
 setcookie('nowcurse',valuesplit[2]);
 $.ajax({
   type: "POST",
   url: "stulogin/stunamelist/"+valuesplit[0],
   data:"",
   dataType: "json",
   success: function(data){
    var nl=$("#namelist");
    nl.empty();
    if (data!=""){
      for(i=0;i<data.length;i++){
       var joinhtml="";
       var val="";
       val=data[i][0]+','+data[i][1]+','+data[i][2];
       joinhtml="<a class='hover' style='font-size: 16px;' href='javascript:void(0)' onclick='selname("+val+");'>"+data[i][1]+"</a>";
       joinhtml+='&nbsp;&nbsp;';
       nl.append(joinhtml);
     }//endfor
     }//endif
   }//endsuccess
}); //endajax
}//end
function selname(nid,name,sex){
// setcookie('nid',nid);
// setcookie('name',name);
// setcookie('sex',sex);
 alert(nid);
}//end
 
复制代码

我是新手,遇到了奇怪的问题
首先ajax取得一组简单数据,json格式:[["1","\u5f20\u6587\u5fb7","\u7537"],["2","\u8389\u8389","\u5973"],["3","\u738b\u661f","\u7537"]]
基于这些数据由joinhtml生成一系列的超级链接<a>,点击链接后执行selname(nid,name,sex),其中name=data[1],sex=data[2],例如:alert(name),则可以显示中文“张利得”;
可是向selname(nid,name,sex)值传递过程中却是显示"\u5f20\u6587\u5fb7"未定义,
请问这是何故?
 楼主| 发表于 2010-7-28 15:10:25 | 显示全部楼层
补充:name=data[1][1],sex=data[1][2],上面显示不全
 楼主| 发表于 2010-7-28 15:23:31 | 显示全部楼层
自己解决了,少加了引号
发表于 2010-7-28 15:24:16 | 显示全部楼层
老外的json类不支持gbk中文,遇到gbk中文会自动和谐掉(中文替换成空字串)

本版积分规则