我有这样的JSON值:
{"223":[{"virtuemart_state_id":"1","state_name":"Alabama"},{"virtuemart_state_id":"2","state_name":"Alaska"}]}
&安培;我正在尝试解析这样的数据:
<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$("document").ready(function() {
var state,
url = 'http://localhost/jquery/test.json';
$.getJSON(url, function(data){
console.log(data);
$.each(data.223, function(i, rep){
state += "<option value = '" + rep.virtuemart_state_id + "'>" + rep.state_name + "</option>";
});
$("#state").html(state);
});
});
</script>
</head>
<div id="result">
<select id="state">
</select>
</div>
但它没有使用数字223&amp;我收到这样的错误:SyntaxError: missing ) after argument list
我在哪里弄错了?感谢
答案 0 :(得分:1)
data.223
无效Javascript。它必须是data['223']
。 .
快捷方式表示法很方便,但它无法处理您在JS中实际创建的所有可能的键名。
答案 1 :(得分:0)
您不能使用.
运算符引用名称不是有效标识符的对象属性。相反,你会这样做:
$.each(data[223], function(i, rep){
答案 2 :(得分:0)
试试这个:$.each(data[223]
。您不能使用。