jQuery显示对象属性

时间:2013-12-10 19:49:09

标签: jquery json datatables

我想将一个从servlet到达的JSON内容显示在由两列组成的简单表中:浏览器和值。 在纯HTML中我会使用定义列表标记,但我必须动态加载所有内容,我不想读取JSON,解析它并手工创建html代码。 另一种方法是使用一个表,其中第一个标题列由属性键填充,第二个数据列由属性值填充。

但我想保持代码清洁,所以我想知道是否有一些小部件或类似的东西以另一种方式做。

最好的方法是使用datatables插件。

P.S。我试着举个例子。 从这个开始

{
    "a": "A",
    "b": "B",
    "c": 6
}

我想达到这个

a A
b B
c 6

也许在表格中打印并以不同方式显示第一列,实际上是标题。

3 个答案:

答案 0 :(得分:2)

尝试:

var a = {
    "a": "A",
    "b": "B",
    "c": 6
}
$.each(a,function(k,v){
    alert("key:"+k+" value:"+v);
});

DEMO here.

答案 1 :(得分:1)

你想要一个for...in循环。它将迭代对象的属性名称,然后您可以使用名称和括号表示法来获取值。

var obj = {
    "a":"A",
    "b":"B",
    "c":6
}

for (var prop in obj) {
    console.log(prop+" "+obj[prop]);
}

对于HTML输出,只需将for...in循环的主体更改为document.write("<tr><td>"+prop+"</td><td>"+obj[prop]+"</td></tr>")(或编辑元素上的innerHTML)

答案 2 :(得分:1)

这将根据问题返回。

const obj={
  "a": "A",
  "b": "B",
  "c": 6
}

console.log(JSON.stringify(obj,null,1).replace(/[^\w\s]/g,''))

http://jsfiddle.net/y1dfLme2/