【发布时间】:2016-11-15 11:15:26
【问题描述】:
在选择逻辑时我需要您的支持。我的脚本从数据库中提取几行并显示在屏幕上。我想为每个数据提供一个反馈表。这些反馈表必须被隐藏,并且应该在点击文本时可见(如回复此)- 请参考图片。
我已经在 java 脚本和 CSS 的帮助下尝试过
<script>
function hideElement()
{
document.getElementById("target").style.display="none";
}
function showElement()
{
document.getElementById("target").style.display="block";
}
</script>
// Data-1 fetched from DB goes here
<a href='#target'>Reply to this post</a>
<span id='target' style='display:none'>
// Feedback form for Data 1 here
</span>
// Data-2 fetched from DB goes here
<a href='#target'>Reply to this post</a>
<span id='target' style='display:none'>
// Feedback form for Data 2 here
</span>
但它只适用于第一条记录, - Javascript 找到第一个名为“target”的对象并设置显示属性“none”或“block”
我可以使用什么逻辑来生成分配给每条记录的动态 ID 并让 java sript 为其运行。有没有其他更好的逻辑来做到这一点? (我确定有)
【问题讨论】:
-
id必须是唯一的。document.getElementById("target")只会选择一个元素,在这种情况下,它会选择与id一起找到的第一个元素。您将需要使用class和getElementsByClassName() -
将它们命名为
target1和target2或其他名称。 -
在您的 HTML 中,您有两个具有相同
id的项目,唯一的意思是只有一个元素可以拥有id。您将需要使用不同的id,或者您可以将它们变成class。 -
我可以为每个数据创建唯一的 ID,但是我应该如何从 Java Script 中指向这些 ID?我应该为每个 ID 生成脚本吗?
标签: javascript html css logic