我有一个包含json的data()
对象。
有没有办法可以遍历对象并获取每个部分的键和值?
这是我到目前为止所做的:
function getFigures() {
var propertyValue = getUrlVars()["propertyValue"];
$.getJSON(serviceURL + 'calculator.php?value=' + propertyValue, function(data) {
figures = data.figures;
$.each(figures, function(index, figure) {
$('#figureList').append('<li> index = ' + data.figures.figure + '</li>');
});
});
$('#figureList').listview('refresh');
}
json看起来像这样:
{"figures":{"value":"150000","completion":"10.00","coal":"32.40","local":"144.00","bacs":"35.00","landRegistry":"200.00","solFee":"395.00","vatOnSolFees":79,"stampDuty":1500,"total":2395.4}}
道歉,如果它很简单,我是jQuery的新手,并且在SO上找不到任何有帮助的东西。
答案 0 :(得分:4)
您可以像这样获得key
和value
$.each(data.figures, function(key, val) {
console.log('Key: ' + key + ' Val: ' + val)
});
所以将代码更改为
$('#figureList').append('<li>'+ index + ' = ' + figure + '</li>');
答案 1 :(得分:0)
参数index
和figure
包含参数名称和值。我认为你想将参数连接成字符串:
$('#figureList').append('<li>' + index + ' = ' + figure + '</li>');
另一种方法是创建列表项元素并设置它的文本,如果文本包含任何需要编码的字符,它也会起作用:
$('#figureList').append($('<li/>').text(index + ' = ' + figure));
答案 2 :(得分:0)
function getFigures() {
var propertyValue = getUrlVars()["propertyValue"];
$.getJSON(serviceURL + 'calculator.php?value=' + propertyValue, function(data) {
$.each(data['figures'], function(index, val) {
here grab "val" is key
$.each(data['figures'][index], function(col, valc) {
here grab "col" is value
}
}
}
再见