javascript中的getElementByID [object HTMLSpanElement]

时间:2015-07-03 10:06:58

标签: javascript getelementbyid

我有以下问题...我想用一个跨度的其他文本替换div的文本。

所以我尝试了这个:

<main>
  <span id="export_text">This text should be exported</span><br>
  <div id="import_text">Here the new text should be after pressing the button</div><hr>
  <a onclick="run()"><button>run</button></a>
</main>

<script type="text/javascript">
  function run() {
    document.getElementById('import_text').innerHTML = document.getElementById('export_text');
  }
</script>

现在,如果按下按钮,div中的文本将替换为[object HTMLSpanElement]而不是span中的文本。我在这里做错了什么?

谢谢!

1 个答案:

答案 0 :(得分:4)

在导出文本选择器的末尾添加.innerHTML

function run() {
    document.getElementById('import_text').innerHTML = document.getElementById('export_text').innerHTML;
}

我还强烈建议您在JS中移动您的活动:

document.getElementById("myBtn").addEventListener("click", run);

更新了HTML:

<main> <span id="export_text">This text should be exported</span>
    <br>
    <div id="import_text">Here the new text should be after pressing the button</div>
    <hr> <a><button id="myBtn">run</button></a>
</main>

JSFiddle:http://jsfiddle.net/ghorg12110/n4cwem28/1/