在我的spring项目中,我使用json-taglibs生成了几个json文件,其结构与此类似:
<%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>
<json:object>
<json:array name="item" var="item" items="${lista}">
<json:object>
<json:property name="id" value="${item.id}"/>
<json:property name="login" value="${item.login}"/>
<json:property name="pnome" value="${item.first_name}"/>
<json:property name="unome" value="${item.last_name}"/>
<json:property name="email" value="${item.email}"/>
</json:object>
</json:array>
</json:object>
我使用这些文件生成带有此jquery代码的表:
function load_content(lista, target){
var atributos = [];
target.find("thead.header").each(function(){
var temp = $(this).text();
console.log(temp);
atributos.push(temp);
});
var url = lista;
$.get(url, function(data){
var json = jQuery.parseJSON( data );
$.each(json.item, function(index, item){
var row = $('<tr id=user'+item.id+'>');
for(var i=0; i<atributos.length; i++) {
if(atributos[i] == '#') {
row.append('<td></td>');
}
else if(atributos[i] == '') {
var col = $('<td>');
target.find("tfoot.actions").each(function(){
var nome = $(this).data("nome");
var action = $(this).data("action");
col.append('<button type="button" class="btn btn-sm btn-primary link" data-action="'+action+'/'+item.id+'">'+nome+'</button>');
});
row.append(col);
}
else {
var token = "item."+atributos[i];
row.append('<td>'+item.login+'</td>');
}
}
target.find("tbody.content").append(row);
});
});
}
我需要对这部分代码提供一些帮助:
else {
var token = "item."+atributos[i];
row.append('<td>'+item.login+'</td>');
}
此parte应该从json文件(在示例中,登录,pnome,unome,email)中读取属性并添加到该行。问题是每个json文件都有自己的属性,我需要这个代码适用于所有这些。
任何人都知道如何做到这一点?