document.getElementById.innerHTML只能工作一次 - 如何配置全局复制元素?

Dom*_*nic 5 html javascript jquery html5 document

我想创建一个外部js文件,我可以在其中配置我的html文件中的几个元素的副本.我正在使用document.getElementById("id").innerHTML ="what ever"; 将我的副本"注入"或"添加"到具有特定id的html元素.

这很好,但是当我的html文件中有多个具有相同id的元素时,我的js文件中的html只被添加到第一个元素,但是我的js文件中的html应该被添加到所有元素中具有相同的ID

那是我的html结构:

<html>
<head>
<script src="copy.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
</head>

<body>

<div>
<strong id="back-button"></strong>
</div>

....

<div>
<strong id="back-button"></strong>
</div>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这是我的JS文件:

$(function() {
    $(document).ready(function addcopy() {

        /* global */
        document.getElementById("back-button").innerHTML = "go back";
});
});
Run Code Online (Sandbox Code Playgroud)

非常感谢任何帮助或提示.谢谢!

tus*_*sar 6

你可以使用class,因为ids只能使用一次.

<html>
<head>
<script src="copy.js" type="text/javascript" charset="utf-8"></script>
<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
</head>
<body>
<div class="back-button">
</div>
....
<div class="back-button">
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

并在JavaScript中:

<script type="text/javascript">
     $(document).ready(function addcopy() {
         /* global */
         $(".back-button").html("<strong>go back</strong>");
     });
</script>
Run Code Online (Sandbox Code Playgroud)