javascript - getElementById 结果为 null

标签 javascript jquery

我想知道是否有人可以解释为什么在这种情况下 spanValue 属性为 null。基本上,我试图在 exampleSpan 中提取文本并将其分配给变量 “spanValue”。完成后,我使用 jQuery 找到类为“testClass”的输入框,并为该输入框分配占位符属性和 “spanValue” 值。

<span id="exampleSpan" style="display:none;">bla-bla</span>

        var spanValue = document.getElementById('exampleSpan'.value); 
        jQuery(".testClass").attr("placeholder", spanValue);

我一直在使用以下行的警报弹出窗口进行测试,并且可以正确返回值。我猜这与我将 spanValue 分配给 exampleSpan 的值的方式有关 - 它是否复制位置而不是值,因此为空?任何解释和示例代码将不胜感激。

    alert(document.getElementById('exampleSpan').innerHTML);

最佳答案

放错了),首先需要使用获取元素。由于该元素是 SPAN 它没有 value 属性,因此使用 textContent属性(property)

var spanElement = document.getElementById('exampleSpan');
var spanValue = spanElement .textContent;

使用 jQuery

//To get the text
var spanValue = $('#exampleSpan').text();

//To get the HTML
var spanValue = $('#exampleSpan').html();

关于javascript - getElementById 结果为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42240393/

相关文章:

javascript - 动态生成集成参数的函数数组?

javascript - div 中的嵌套 div 不会覆盖

javascript - CSS模态跳到底部

JavaScript 只允许用户点击一次

jquery - 通过单击事件在元素内单击标签时避免 'double event'

javascript - 循环传单中的数据

javascript - 在锚定选项卡中不起作用 $_GET ['id' ]

javascript - 如何从 HTML 登录页面在 Node.js 控制台中进行通信或获取数据?

javascript - 需要优化的解决方案,用于隐藏选择框选项

Jquery 将\n 替换为 <br/>?