首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >所有标签值随数组值的变化而变化。

所有标签值随数组值的变化而变化。
EN

Stack Overflow用户
提问于 2022-09-02 20:15:28
回答 2查看 48关注 0票数 0

所以,我有一个带有复选框的下拉列表

代码语言:javascript
运行
复制
<div id = "dropdown" class ="dropdown">
   <div class = "dropdown-row">
     <label for="Item-1">Item 1</label>
     <input type="checkbox" class="clickable" id="Item-1">
   </div>
   <div class = "dropdown-row">
     <label for="Item-2">Item 2</label>
     <input type="checkbox" class="clickable" id="Item-2">
   </div>
   <div class = "dropdown-row">
     <label for="Item-3">Item 3</label>
     <input type="checkbox" class="clickable" id="Item-3">
   </div>
   <div class = "dropdown-row">
     <label for="Item-4">Item 4</label>
     <input type="checkbox" class="clickable" id="Item-4">
   </div>
   <div class = "dropdown-row">
     <label for="Item-5">Item 5</label>
     <input type="checkbox" class="clickable" id="Item-5">
   </div>
   <div class = "dropdown-row">
     <label for="Item-6">Item 6</label>
     <input type="checkbox" class="clickable" id="Item-6">
   </div>
</div>

此外,我还有一个数组:

代码语言:javascript
运行
复制
const niches = ["Producer", "Filmmaker", "Manager", "Model", "Musican", "Artist"]

如何用数组值更改所有标签文本?

我试过这样的方法:

代码语言:javascript
运行
复制
const items = document.getElementsByTagName("label")
function setLabel () {
    for (let i = 0; i < niches.length; i++) {
        items.innerHTML = niches[i]
    }
}
setLabel()
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-09-02 20:38:04

修正了代码中的一些内容,例如在html中,您忘记用"“关闭类。

代码语言:javascript
运行
复制
<div id = "dropdown" class ="dropdown">
   <div class = "dropdown-row">
     <label for="Item-1">Item 1</label>
     <input type="checkbox" class="clickable" id="Item-1">
   </div>
   <div class = "dropdown-row">
     <label for="Item-2">Item 2</label>
     <input type="checkbox" class="clickable" id="Item-2">
   </div>
   <div class = "dropdown-row">
     <label for="Item-3">Item 3</label>
     <input type="checkbox" class="clickable" id="Item-3">
   </div>
   <div class = "dropdown-row">
     <label for="Item-4">Item 4</label>
     <input type="checkbox" class="clickable" id="Item-4">
   </div>
   <div class = "dropdown-row">
     <label for="Item-5">Item 5</label>
     <input type="checkbox" class="clickable" id="Item-5">
   </div>
   <div class = "dropdown-row">
     <label for="Item-6">Item 6</label>
     <input type="checkbox" class="clickable" id="Item-6">
   </div>
</div>

你给出的例子有一些类似的错误。

代码语言:javascript
运行
复制
<div class = "dropdown-row> <!-- you didnt close double quotes here -->

为了你的职责

代码语言:javascript
运行
复制
const niches = ["Producer", "Filmmaker", "Manager", "Model", "Musican", "Artist"];

const items = document.getElementsByTagName("label")

function setLabel () {
    for (let i = 0; i < niches.length; i++) {
        items[i].innerHTML = niches[i]
    }
}
setLabel()

在项目中有几个值,因为您有标签标记,并且您希望在for循环中访问它们,所以只需要将索引添加到项中,这样就可以从这个items.innerHTML = niches[i]循环到这个items[i].innerHTML = niches[i],这样就可以通过这两个变量循环。

票数 1
EN

Stack Overflow用户

发布于 2022-09-02 20:27:31

您没有访问items中的索引,因此尝试将单个值设置为元素集合。

当您将索引添加到项中时,您的代码就像一种魅力。

代码语言:javascript
运行
复制
function setLabel () {
    for (let i = 0; i < niches.length; i++) {
// when you access items with i as well item1 gets niche1 and so on
        items[i].innerHTML = niches[i]
    }
}

https://jsfiddle.net/Lt25r7xu/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73587576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档