【问题标题】:Opening a popup in Javascript is showing same value rather than showing different values在 Javascript 中打开一个弹出窗口显示相同的值,而不是显示不同的值
【发布时间】:2017-08-19 18:15:36
【问题描述】:
<div>       
    <% items.forEach(function(itemname,index) { %>
               <table>
                <tr>
                   <td>
                     <a href="#Test"><img src="samplebutton.png"></a>  
                <div id="Test">
               <div>
                         <input type="text" value="<%= itemname %>">
                   </div>
            </div>
           </td>
                </tr>
              </table>
    <% }) %>
</div>

我有以下代码。在此代码中,我的页面上有三个“示例按钮图标”,并且在此 ejs 文件中传递了三个“项目”。如果我单击任何“示例按钮图标”,则通过 href“测试”将打开一个输入框弹出窗口,我可以在其中输入“项目名称”,默认情况下,在该输入框中,应显示来自 ejs 文件的传递“项目名称”。 现在问题来了,如果我单击任何示例按钮图标,那么只有第一个项目名称会显示在输入弹出窗口中。我想要这样,如果我单击第一个示例按钮图标,则默认情况下应显示第一个项目名称,如果我单击第二个示例按钮图标,则默认情况下应显示第二个项目名称,依此类推。那么,我在这段代码中哪里出错了?我试图将主 div 移出,然后它也只显示第一个项目名称。

【问题讨论】:

  • 也发布你的 JS 或小提琴
  • @YogeshMistry 是否需要 JS,因为我检查了这三个项目是否正确传递到 ejs 文件中。事实上,如果我在 块中写 那么所有 3 个项目名称都将打印在示例按钮图标之前的页面中..
  • 您对所有三个项目使用相同的 id。如果有多个具有相同值的 id,将考虑第一个。尝试在 id 中附加索引
  • @TalhaAwan 非常感谢完美的工作。还有一个问题,如果我在 div 标签内添加一个 ID 为“Test”的按钮,例如 google.co.in">Link</a>,那么这个“链接”按钮不起作用。这里有什么问题?

标签: javascript html ejs


【解决方案1】:
<div>       
    <% items.forEach(function(itemname,index) { %>
               <table>
                <tr>
                   <td>
                     <a href="#Test<%= index %>"><img src="samplebutton.png"></a>  
                <div id="Test<%= index %>">
               <div>
                         <input type="text" value="<%= itemname %>">
                   </div>
            </div>
           </td>
                </tr>
              </table>
    <% }) %>
</div>

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签