Javascript 为什么我得到[object HTMLParagraphElement]
我是个新手。这是我的密码:Javascript 为什么我得到[object HTMLParagraphElement],javascript,Javascript,我是个新手。这是我的密码: <html> <head> <script type="text/javascript"> function replyOne () { document.getElementById("comment_content").value = document.getElementById("username") } </script> </head>
<html>
<head>
<script type="text/javascript">
function replyOne () {
document.getElementById("comment_content").value = document.getElementById("username")
}
</script>
</head>
<body>
<p id="username">Jack</p>
<textarea id="comment_content" ></textarea>
<button onclick="replyOne()">Copy Text</button>
</body>
</html>
函数replyOne(){
document.getElementById(“注释内容”).value=document.getElementById(“用户名”)
}
杰克
复制文本
我希望当我点击按钮时,它会将“Jack”复制到文本区域。
但它只写“[object HTMLParagraphElement]”。它应该是:
document.getElementById("comment_content").value =
document.getElementById("username").innerHTML
如果没有
.innerHTML
,它将尝试复制实际元素,而不是其内容。您可以使用textContent、innertext、innerHTML。但其中两个是特定于浏览器的,innerHTML可以在三种主要浏览器上工作
您还可以按父子组合解析dom,并将获得所需的值
function replyOne () {
document.getElementById("comment_content").value=document.getElementById("username").innerHTML;
//OR
document.getElementById("comment_content").value=document.getElementById("username").textContent;
}
这是带有示例的[objectHTMLParagraphElement]的解决方案
var sel = document.getElementById('ex').innerHTML; // without innerHTML this will
comes [objectHTMLParagraphElement]
var txt = sel + "Hello";
document.write(txt); // output Hello
知道了。非常感谢。:)@许明:别忘了勾选(接受)对你有用的答案。