首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

jsp经过json获取多个不同类型的值

2013-07-08 
jsp通过json获取多个不同类型的值struts.xml的配置action的情况,xml里的值都get set过了那么,该怎样获得js

jsp通过json获取多个不同类型的值


struts.xml的配置
jsp经过json获取多个不同类型的值

action的情况,xml里的值都get set过了
jsp经过json获取多个不同类型的值


那么,该怎样获得json里的那么些个不同类型的值,对象,属性,集合都有,这种情况该怎么弄,求大神指点,alert(data),弹出来[object Object],里面的te、tp都是对象来的,pageindex和pagecount是两个int属性,tcvlist1是个集合
[解决办法]
这两个方法是后台封装成json的


private String getListJSON(List list) {
if (list == null) {
return "";
}
StringBuffer sb = new StringBuffer();
sb.append("[");
DictModel dm = null;
for (int i = 0; i < list.size(); i++) {
dm = (DictModel) list.get(i);
sb.append(getJSONdata(dm));
if (i != list.size() - 1) {
sb.append(",");
}
}
sb.append("]");
return sb.toString();
}

private String getJSONdata(DictModel dm) {
if (dm == null) {
return "";
}
StringBuffer sb = new StringBuffer();
sb.append("{");
sb.append("id:" + dm.getId() + ",");
sb.append("pid:" + dm.getPid() + ",");
sb.append("name:"" + dm.getName() + "",");
sb.append("ord:" + dm.getOrd());
sb.append("}");
return sb.toString();
}

这个是前台获取json数据的

$(document).ready(function(){
 $.ajax({
         url: "<%=path%>/modelAction.do",
         data: {
         pid:"-1",
         method:"query"
         },
         type: "GET",
         cache: false,
         async: false,
         success: function(data){
         var dataObj=eval("("+data+")");
         dataObj.sort(function(a,b){
                return a["ord"]>b["ord"]?1:a["ord"]==b["ord"]?0:-1
            });
         $.each(dataObj,function(i,d){
$("<option value='"+d['id']+"'>" +d['name']+"</option>").appendTo("#bq");
         });
         }
 });
});



[解决办法]
首先你要了解json的格式{"变量名称1":"变量值","变量名称2":"变量值"},运用struts2的result组件返回json会自动帮你action中的属性变成json返回的,如果不是简单类型,就需要在属性get方法的前面加上
@JSON(serialize=false),json对象的值默认是字符串的,例如:
@JSON(serialize=false)public List<String> getXXX(){
//省略
}

热点排行