繁体   English   中英

用 json 填充下拉列表

[英]Fill dropdown list with json

我有 SQLite 表,其中包含列 ID 和名称。 我从 autocomplete.php 页面返回像 json 这样的行的数组。 如何使用 json 使用 jquery 和 Z68615Z9D805A60EDDE3E6 我是 JavaScript 和 JQuery 的新手,我用谷歌搜索但没有找到方法。 在 ASP.NET 这很容易,但在这里我不知道。 有人会帮忙吗?

这是我的 JSON 的示例,可以更长。

[
    {
        "id": "1",
        "name": "test"
    },
    {
        "id": "1",
        "name": "test"
    }
]

HTML:

<select id="sel">

</select>

JavaScript:

$(function() {
    var data = [
        {
        "id": "1",
        "name": "test1"},
    {
        "id": "2",
        "name": "test2"}
    ];
    $.each(data, function(i, option) {
        $('#sel').append($('<option/>').attr("value", option.id).text(option.name));
    });
})

这是一个工作示例。 http://jsfiddle.net/ms2Ma/

试试这个,这会给你一个选项,让你有任意数量的下拉框和 JSON 节点来配置下拉框。

您需要执行以下几个步骤:

  • 创建一个下拉框数组。(例如,如果您必须配置手机,那么您应该使用颜色下拉菜单、memory 等)
  • 创建一个 JSON object,因为它是在代码中创建的。 不要更改以“level1”开头并以任意数量的节点结尾的可配置项名称,因为它必须与您首先创建的数组项的索引同步。

这是数据:

var Dropdowns = ["Model", "Color", "Memory","design","covers","music"];
var Data ={"phones":[
  {
     "oid":":000000F0:00000458:",
     "level1":"3G",
     "level2":"white",
     "level3":"16GB",
     "level4":"slim",
     "level5":"Back cover",
     "level6":"headphone",
     "price":"£568.63",
     "addToCart":"#Cart1"
  },
  {
     "oid":":000000F0:000003DA:",
     "level1":"3G",
     "level2":"black",
     "level3":"16GB",
     "level4":"slim",
     "level5":"Flip cover",
     "level6":"headphone",
     "price":"£615.79",
     "addToCart":"#Cart7"
  }]};

在此处查看完整的工作代码: https://jsfiddle.net/raju_sumit/681ppgq0/5/

尝试这个:)

Javascript:

$.getJSON("/array.json",
  function (json) {
      $.each(json,
      function (key, value) {
      $("#id-select").append("<option value='" + value.c + "'>" + value.d + "</option>");
      });
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM