Javascript HTML此语句 函数copyText(str1、str2){ document.getElementById(str2).innerHTML=document.getElementById(str1).innerHTML } 你好,世界 到目前为止没有变化 改变

Javascript HTML此语句 函数copyText(str1、str2){ document.getElementById(str2).innerHTML=document.getElementById(str1).innerHTML } 你好,世界 到目前为止没有变化 改变,javascript,html,Javascript,Html,我希望能够将元素ID作为参数传递给javascript函数。有什么方法可以做到这一点吗?按ID获取元素的跨浏览器方法是您已经知道的document.getElementById()函数。与其说是这样,不如说: <head> <script> function copyText(str1, str2){ document.getElementById(str2).innerHTML = document.getElementById(str1).innerHTML

我希望能够将元素ID作为参数传递给javascript函数。有什么方法可以做到这一点吗?

按ID获取元素的跨浏览器方法是您已经知道的
document.getElementById()
函数。与其说是这样,不如说:

<head>
<script>
function copyText(str1, str2){
    document.getElementById(str2).innerHTML = document.getElementById(str1).innerHTML
}
</script>
</head>
<body id="main">
    <H2 id="text1">Hello World</H2>
    <H2 id="text2" >No change so far</H2>
    <button onclick="copyText(document.main.text1.id, document.main.text2.id)">Change</button>
</body>
。。。您应该这样做:

document.main
。。。等等,但你当然是在做一些多余的事情:通过ID获取一个元素,以获取其ID。这就像打电话询问接收者其电话号码一样。您所需要的只是:

document.getElementById("main")

id只是字符串。

为什么
copyText('text1','text2')
不起作用?在第四行的声明后需要一个分号。您最终想要完成什么?谁教您通过
document.main.text1.id
引用元素的?分号在内联事件处理程序和一些特殊位置之外不是必需的
copyText('text1', 'text2')