我不知道如何通过javascript从模板中获取DOM元素的好方法。
示例模板:
<script id = "template" type="text/template">
<div>text1</div>
<div>text2</div>
<div>text3</div>
</script>
例如,我想用“text2”获取div
我知道的方法都很糟糕:
为所有元素添加“class” - 它打破了语义(为CSS创建的类)。在大项目中,你必须使用非常长的名字,这非常不方便。
按编号(索引)获取元素 - 添加新元素时,必须在代码中重写旧数字。
答案 0 :(得分:1)
我看到了几个选项:
如果您不想使用class
,可以使用data-*
attribute。
假设您加载模板一次然后根据需要复制其内容,您可以将id
值放在模板中的元素上,然后在克隆它们时将其删除并将它们添加到文档中(因此您不会在元素的多个副本上使用相同的id
,这将是无效的并且可能适得其反)。
答案 1 :(得分:0)
也许您也可以根据需要创建任意数量的模板。 每个div一个。 如果你需要一次获得每个div,你必须为它们设置id ...当然你也可以浏览dom inside script元素来找到你感兴趣的那个......
首页帮助
此致
mimiz