我一直在寻找一个似乎是一个简单问题的解决方案,但我无法找到解决方案...任何指导都将不胜感激。
我正在尝试使用从PHP脚本检索的JSON对象构建一个选择框。 PHP脚本(versions.php)正在对数据库表运行查询;代码如下:
$posts = array();
if(mssql_num_rows($result)) {
while($post = mssql_fetch_assoc($result)) {
$posts[] = $post;
}
}
header('Content-type: application/json');
echo json_encode($posts);
...并返回以下json结构:
[{ “版本”: “3.3.0”},{ “版本”: “1.5.0”}]
从中央JS文件调用PHP文件,其结构如下:
jQuery(function($){
$.getJSON('versions.php', function(data) {
var select = $('#release-list');
$.each(data, function(key, val){
var option = $('<option/>');
option.attr('value', val)
.html(data)
.appendTo(select);
});
});
});
看看firebug,我看到了对象列表,但没有看到数组中的值。我想这与上面javascript文件中的代码有关 - 只是不确定如何访问json对象中的值。
提前致谢。
答案 0 :(得分:4)
你快到了。根据您的JSON结构,它看起来应该是这样的:
jQuery(function($){
$.getJSON('versions.php', function(data) {
var select = $('#release-list');
$.each(data, function(key, val){
$('<option/>').attr('value', val.version)
.html('version ' + val.version)
.appendTo(select);
});
});
});