【问题标题】:Duplicate element ID's dynamically?动态重复元素ID?
【发布时间】:2013-10-26 11:13:34
【问题描述】:

我的脚本会动态生成多个无限显示/隐藏区域,如下面的示例所示。我需要弄清楚如何自动创建 ID,然后沿途复制每个 ID。示例:ID1/ID1、ID2/ID2 等

我希望有人能理解我想要做什么。我的代码素养不足以更好地解释它。即使每个 ID 是随机的但重复的,也可以。

谢谢!

<a href="javascript:toggle('ID1')">TEST</a>
<div id="ID1" style="display: none;">
CONTENT HERE
</div>

<a href="javascript:toggle('ID2')">TEST</a>
<div id="ID2" style="display: none;">
CONTENT HERE
</div>

Javascript 部分:

<script type="text/javascript">
function toggle(element) {
document.getElementById(element).style.display = (document.getElementById(element).style.display == "none") ? "" : "none";
}
</script>

【问题讨论】:

  • “我的脚本动态生成多个无限显示/隐藏区域” - 请显示脚本的相关部分,而不仅仅是其(当前或期望的)输出。
  • 所以你想创建一个ID3ID4ID5 (...),每个都有自己的链接和 div?
  • 我已经为你添加了 javascript 部分 nnnnnn
  • Qantas 94 Heavy...是的,但是为每个字段复制每个 ID...ID3/ID3、ID4/ID4、ID5/ID5 等。它需要自动从“toggle”复制 ID ("... 到 "div id="... 的 ID

标签: javascript dynamic hide element show


【解决方案1】:

只要使用 jQuery,你根本不需要关心 ID。

<a href="javascript:;">TEST</a>
<div id="ID1" style="display: none;">
CONTENT HERE
</div>

<a href="javascript:;">TEST</a>
<div id="ID2" style="display: none;">
CONTENT HERE
</div>

<script>
$(function() {
    $('a').click(function() {
       $(this).next('div').toggle() 
    });
});
</script>

演示:http://jsfiddle.net/vPmE5/

【讨论】:

  • 感谢 TrungDQ .... 这更接近了,但是我需要通过 javascript 随机生成或自动递增 ID,因为您发布的代码最终会在 html 页面上呈现...我希望我可以将它输出到一个 php 页面中,我可以添加一些 php 代码来获取所需的 ID 值,但不幸的是我不能。或者当您说我不需要担心 ID 时,这是否意味着
    ID 完全不影响 jQuery 脚本,您可以在我的示例中删除它们,仍然可以使用。您可能想了解 jquery 以了解脚本中发生了什么,它实际上为下一个 div 元素执行“toggle()”。
  • 没有时间学习...只需要尽快启动和运行。谢谢你的帮助。我会玩弄你给我的东西。
  • 我欠你一杯啤酒什么的 TrungDQ!非常感谢。工作完美....如果可以的话,我会投票给你:)
猜你喜欢
相关资源
最近更新 更多
热门标签