Javascript appendChild不是一个函数-我做错了什么?

Javascript appendChild不是一个函数-我做错了什么?,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,我知道这是一个非常常见的错误,但我就是不明白为什么这不起作用 我想动态更改跨度的值。很简单,对吧?我尝试了$span.innerHTML=“text”和$span.innerText=“text”,它们什么都不做,但不会抛出任何错误。我最近的尝试如下所示: var $resourceSpan = $("#divname"+dynamic_variable); var stringVar = functionThatReturnsString(); while( $resourceSp

我知道这是一个非常常见的错误,但我就是不明白为什么这不起作用

我想动态更改跨度的值。很简单,对吧?我尝试了$span.innerHTML=“text”和$span.innerText=“text”,它们什么都不做,但不会抛出任何错误。我最近的尝试如下所示:

var $resourceSpan = $("#divname"+dynamic_variable);
var stringVar = functionThatReturnsString();
      while( $resourceSpan.firstChild ) {
        $resourceSpan.removeChild( $resourceSpan.firstChild );
      }
      var textNode = document.createTextNode(stringVar);
      $resourceSpan.appendChild( textNode );

有人知道我为什么要抛出这个错误吗?谢谢

您正在处理jQuery对象,比如removeChild()方法,它属于dom元素,而不属于jQuery对象

要删除可以使用的元素的所有内容,并设置可以使用的元素的文本内容,但使用.text()将替换现有内容,因此在您的情况下,只需使用

var$resourceSpan=$(“#divname”+动态_变量);
var stringVar=返回字符串()的函数;

$resourceSpan.text(stringVar)你想做这样的事吗

<html>
<head>
    <title>STACK OVERFLOW TESTS</title>
    <style>

    </style>
</head>
<body>

    <span>HI, IM SOME TEXT</span>

    <input type = 'button' value = 'Click me!' onClick = 'changeText()'></input> <!-- Change the text with a button for example... -->

    <script>
        var text = 'I AM THE NEW TEXT'; // The text to go in the span element

        function changeText(){
            var span = document.querySelector('span');
            span.innerHTML = text;
    }
    </script>
</body>
</html>

堆栈溢出测试
嗨,我在发短信
var text='我是新文本';//要放在span元素中的文本
函数changeText(){
var span=document.querySelector('span');
span.innerHTML=文本;
}

$resourceSpan.firstChild
不是一个函数吗?你需要()在它之后。。。