【问题标题】:for each element, onclick change values对于每个元素,onclick 更改值
【发布时间】:2016-06-26 08:35:23
【问题描述】:

我已经使用 nodejs 手柄栏为每个表创建一个:

<tbody>
    {{#each result}}    
        <tr>
            <td id="engagementTotal">{{data.engagementTotal}}</td>
        </tr>
    {{/each}}
</tbody>

但我需要通过 onclick 函数更改每个值的值,我尝试使用

for (var i=0; i < positiveTotal.length; i++){
    sEngagementTotal.push(positiveTotal[i].data.engagementTotal);
}

document.getElementById("engagementTotal").innerHTML = sEngagementTotal;

但上面只改变了第一个表的值

【问题讨论】:

  • 您对单个文档中的多个项目使用相同的 id 吗?
  • 是的,因为 元素由 for 每个循环生成
  • 使用客户端把手更新完整的tbody标签点击功能。查看handlebarsjs.com了解更多详情
  • 对不起,我是新手,我不明白你在说什么
  • ids 必须是唯一的,使用类代替

标签: javascript jquery arrays node.js foreach


【解决方案1】:

依赖于类而不是依赖于id

<tbody>
    {{#each result}}    
        <tr>
            <td id="engagementTotal" class="demo">{{data.engagementTotal}}</td>
        </tr>
    {{/each}}
</tbody>

for (var i=0; i < positiveTotal.length; i++){
    sEngagementTotal.push(positiveTotal[i].data.engagementTotal);
}

document.getElementByClass("demo").innerHTML = sEngagementTotal;

【讨论】:

  • 所以如果我有一个像 ['10','20','30'] 这样的数组,我可以将它们插入到我拥有的每个表中吗?
  • 您遇到了什么问题?
猜你喜欢
相关资源
最近更新 更多
热门标签