如何使用 JavaScript 创建包含数组值的下拉列表


概述

要获取下拉列表中的选项,而不影响网页的前端,可以使用数组。在数组中,我们可以存储任意数量的选项或值。因此,无需直接将这些值放在代码的 HTML 部分的 select 标签中,我们可以从数组中渲染它们,这使得轻松添加更多值而无需干扰页面用户界面 (UI)。

方法

这是一种非常简单的技术,使用这种技术,我们可以轻松地将选项值渲染到我们的列表中。通过使用数组,我们可以将所有字符串类型的值存储在一个变量中,从而降低空间复杂度。我们还有许多函数,例如“for”、“foreach”、“map()”,使用这些函数,我们可以遍历数组并渲染值。

语法

创建下拉列表的语法如下:

<select name="" id="">
   <option value=""></option>
   <option value=""></option>
</select>

算法

步骤 1  创建 HTML 代码模板。要在 HTML 中创建下拉列表,我们使用 select 标签创建下拉列表,并使用 option 标签创建列表。

<select>
   <option></option>
   <option></option>
</select>

步骤 2  使用选项作为元素初始化一个数组,并创建一个空的字符串类型变量。

var arr = ["Courses here","Frontend Training","Backend Training","Java Training","Ethical Hacking"];

步骤 3  现在使用数组的 map 方法,它将数组中的值映射到下拉列表的选项列表。使用连接技术将选项连接到下拉列表。

arr.map((op,i)=>{
   options+=`<option value="${op}" id="${i}" style="border-radius: 5px;"">${op}</option>`
})

步骤 4  现在 options 变量包含来自数组的选项列表。将从数组中渲染的值显示为下拉列表。

document.getElementById("arrayDropdown").innerHTML=options;

步骤 5  所有渲染的选项都将显示在下拉列表中,并可以使用。

示例

在这个例子中,我们从数组中渲染了选项的值。使用 map() 函数,我们迭代了带有 option 标签的数组,并将其与字符串类型变量连接起来。我们通过使用 innerHTML() 方法将输出显示到 select 标签中。

<html>
<head>
   <title>Create a dropdown with array rendered option</title>
</head>
<body>
   <h2>Dropdown list with array rendered options</h2>
   <select id="arrayDropdown" style="outline:none;padding: 0.4rem;border-radius: 5px; border: none; box-shadow: 0 0 10px rgb(202, 202, 202);margin: 0.8rem;"></select>
   <script>
      var arr = ["Courses here","Frontend Training","Backend Training","Java Training","Ethical Hacking"];
      var options="";
      arr.map((op,i)=>{
         options+=`<option value="${op}" id="${i}" style="border-radius: 5px;"">${op}</option>`
      })
      document.getElementById("arrayDropdown").innerHTML=options;
   </script>
</body>
</html>

下图显示了上述示例的输出。这只是为了说明如何将数组渲染到 HTML 中作为选项列表。因此,如果您想使它更具交互性,我们可以使用 Bootstrap 组件,它使样式更美观。

结论

此方法是渲染下拉列表选项值的最佳方法。其主要优点在于它是动态的,这使得操纵数组变得容易,这意味着我们可以轻松地更新、添加或删除来自数组的选项。由于我们创建了一个选项列表数组,因此它严格遵循“不要重复自己 (D-R-Y)”。它作为一个组件,可以通过开发一些用户界面 (UI) 渲染在网页上的任何位置。

更新于:2023年4月11日

8K+ 浏览量

开启你的职业生涯

通过完成课程获得认证

开始学习
广告