【问题标题】:How to Populate a List Box (combo box) from a Multi-Dimensional Array?如何从多维数组中填充列表框(组合框)?
【发布时间】:2012-04-22 12:36:47
【问题描述】:

我是 JavaScript 的学生,今晚有一个作业要交。我一直在工作,并重新工作,代码。

基本上,我正在努力从多维数组中填充列表框(组合框)。

我创建了一个多维数组并且它可以工作(我将结果发送到警报框)。

var concertArray = [
        ["Billy Joel", "99", "equal.png"],
        ["Bryan Adams", "89", "higher.png"],
        ["Brian Adams", "25", "lower.png"]

        ];

但是,我不知道如何将此数组填充到选择列表框(组合框)中。

任何帮助,非常感谢。

【问题讨论】:

  • 你知道如何遍历数组吗?
  • 什么,确切地说,该示例生成的 HTML 应该是什么?您是否尝试过使用for 循环?
  • 添加 Billy Joel、Bryan Adams 和 Brian Adams 的列以显示在选择框中。然后我想使用该值来显示价格和要显示的图像。我想一旦我可以填充组合框,我就可以做其他事情了。

标签: javascript arrays


【解决方案1】:

使用此代码。

<html>

    <head>
     <script type="text/javascript">
        var concertArray = [
            ["Billy Joel", "99", "equal.png"],
            ["Bryan Adams", "89", "higher.png"],
            ["Brian Adams", "25", "lower.png"]
            ];

            function populate(){

                for(i=0;i<concertArray.length;i++){
                    var select = document.getElementById("test");
                    select.options[select.options.length] = new Option(concertArray[i][0], concertArray[i][1]);
                }

            }
        </script>
        </head>

    <body onload="populate();">
        <select id="test">
        </select>
    </body>     
</html>

这会对你有所帮助.....

【讨论】:

  • 我并不想打扰你。我想明白这一点。所以,如果我想在选择比利乔尔 [0] 时拉价格 [1] = 99,你知道这会如何工作吗?如果你不这样做也没关系,我只是希望能掌握这些东西,因为我可以看到它非常有用。
【解决方案2】:

从数组中提取要添加到组合框中的数据,然后使用jquery append将它们添加到选择标签中。

<select id="test">
</select>

遍历数组并将要添加的数据存储在变量中,例如 var data,然后:

$('#test').append('<option value="'+data+'">'+data+'</option');

【讨论】:

  • 这是主要逻辑,遍历数组并自己使用此代码。我这边没有更多的帮助。 ;)
  • 那么,如果我想在选择框中添加 Billy Joel、Bryan Adams 和 Brian Adams 的列,我该怎么写呢?
  • 所以,我需要 var data for (var i = 0; i '+ 数据 +''); }
猜你喜欢
  • 2013-12-19
  • 1970-01-01
  • 1970-01-01
  • 2020-08-23
  • 2021-06-18
  • 2020-08-21
  • 2023-03-30
  • 2016-10-03
  • 1970-01-01
相关资源
最近更新 更多