Javascript jquery使用$.each和jq输出数组从json输出生成listbox

Javascript jquery使用$.each和jq输出数组从json输出生成listbox,javascript,jquery,arrays,json,Javascript,Jquery,Arrays,Json,我使用jq将一个json key:value对数组提取到一个数组中,但我不知道如何使用它填充一个html选择列表框 如果我在jq输出中添加东西,我可以阅读它,但答案可能是让jq输出成为非匿名数组中的精确json。我只是不知道该怎么做 jq的输出类似于: [ { "id": 82247683, "name": "project1" }, { "id": 7700483, "name": "project2" } ] 使用jquery$的方法。每种方

我使用jq将一个json key:value对数组提取到一个数组中,但我不知道如何使用它填充一个html选择列表框

如果我在jq输出中添加东西,我可以阅读它,但答案可能是让jq输出成为非匿名数组中的精确json。我只是不知道该怎么做

jq的输出类似于:

[
  {
    "id": 82247683,
    "name": "project1"
  },
  {
    "id": 7700483,
    "name": "project2"
  }
]
使用jquery$的方法。每种方法都是使用如下格式:

{"project": [
  {
    "id": 82247683,
    "name": "project1"
  },
  {
    "id": 7700483,
    "name": "project2"
  }
]}
现在,我在第一行和最后一行加上大头钉,以使此数据再次成为json数据,并使其与getJSON一起工作

美元。我使用的每个循环:

<script type="text/javascript">
    var $select = $('#project');
    $.getJSON('projects.json', function(data) {
        $select.html('');
        $.each(data.project, function(key,val) {
          $select.append('<option id="'+val.id+'">'+val.name+'</options>');
        })
    });
</script>
由于getJSON use plus使用$.eachdata.project,我需要添加数组名和其他元素

如果您能提供有关使用jq获取正确json的信息,或者我需要对getJSON+$进行的任何修改的信息,我将不胜感激。另外,在这个场景中,getJSON甚至需要非匿名数组吗

最终结果应该是填充的列表框。

风险值数据=[ { 身份证号码:82247683, 姓名:project1 }, { 编号:7700483, 姓名:project2 } ]; 变量数据2={ 项目:[ { 身份证号码:82247683, 姓名:project1 }, { 编号:7700483, 姓名:project2 } ] }; console.log'data'; $.eachdata,functionkey,val{ console.log+val.name+; }; console.log'data2'; $.eachdata2.project,functionkey,val{ console.log+val.name+; };
$。每种格式都不关心您使用的是哪两种格式,只要您给出希望它迭代的格式即可。不过,我不知道如何将其转换为我的代码。我使用的是$.getJSON,而您有两个变量集不是由$.getJSON定义的。我尝试了var data=$.getJSON'projects.json'之类的东西;但这不起作用。您的代码确实显示了$。每个都可以与匿名数组和命名数组一起使用。我试着做一些类似var data;$的事情。getJSON'projects.json',functionjson{data=json;}然后使用该数据变量,但我认为问题是,除非我在最后添加{project:[和]},否则数据不会被视为合法的json。您只需要将data.project更改为data。我只是把它明确地添加到我的答案中。