繁体   English   中英

如何使用JavaScript在带有id的td中插入文本

[英]How to insert text in a td with id, using JavaScript

我知道这可能是一件简单的事情,但我无法弄明白。 我试图将一些来自JavaScript函数onload事件的文本插入到td中。

<html>
 <head>
  <script type="text/javascript">
   function insertText ()
   {
       //function to insert any text on the td with id "td1"
   }
  </script>
 </head>
 <body onload="javascript:insertText()">
  <table>
   <tr>
    <td id="td1">
    </td>
   </tr>
  </table>
 </body>
</html>

有帮助吗?

<html>

<head>
<script type="text/javascript">
function insertText () {
    document.getElementById('td1').innerHTML = "Some text to enter";
}
</script>
</head>

<body onload="insertText();">
    <table>
        <tr>
            <td id="td1"></td>
        </tr>
    </table>
</body>
</html>

附加文本节点如下

var td1 = document.getElementById('td1');
var text = document.createTextNode("some text");
td1.appendChild(text);

有几个选项......假设您通过var td = document.getElementyById('myTD_ID');找到了您的TD var td = document.getElementyById('myTD_ID'); 你可以做:

  • td.innerHTML = "mytext";

  • td.textContent= "mytext";

  • td.innerText= "mytext"; - 这个可能不适用于IE之外? 不确定

  • 使用firstChild或children数组作为前面提到的海报。

如果它只是需要更改的文本,textContent更快,更不容易发生XSS攻击( https://developer.mozilla.org/en-US/docs/Web/API/Node.textContent

如果你的<td>不是空的,一个流行的技巧是插入一个非破坏的空间&nbsp; 在其中,这样:

 <td id="td1">&nbsp;</td>

然后你就可以使用:

 document.getElementById('td1').firstChild.data = 'New Value';

否则,如果您不想添加无意义的内容&nbsp您可以使用Jonathan Fingland在其他答案中描述的解决方案。

使用jQuery

看看你做得多么容易。

例:

$('#td1').html('hello world');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM