获取内部文本并将其拆分.使用innerHTML和split的Javascript问题

Get inner text and split it. Javascript problems using innerHTML and split

本文关键字:innerHTML split 问题 Javascript 使用 拆分 文本 内部 获取      更新时间:2023-09-26

拥有下一个简单的html代码:

<div id="content">
This is a test
</div>

我不明白为什么这是可以的:

$(function(){
text = 'this is a text';
word = text.split(' ');
alert(word[1])
})

但这不是:

$(function(){
text = $('#content').text();
word = text.split(' ');
alert(word[1])
})

Jquery或原生javascript,问题是一样的。我希望在这两种情况下都会出现具有相同单词的警报,但仅在第一种情况下发生。我的错误在哪里?

这是我的问题:http://jsfiddle.net/bbtdf/2/

谢谢!

试试这个(你需要修剪文本)

$(function(){
    var text = $.trim($('#content').text()),
    word = text.split(' ');
    alert(word[1])
});

演示。

您需要修剪文本/html,因为它们在内容前后都有空格

$(function(){
    var text = $('#content').text(),
        word = $.trim(text).split(' ');
    console.log(word[1])
})

演示:小提琴

否则,您需要将 html 编写为<div id="content">This is a test</div>

尝试使用此代码

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<div id="content">
This is a test
</div>
<script>
  $(function(){
     text = $('#content').text();
     word = text.split(' ');
     alert(word[1])
  });
</script>

内容中有 3 个缩进空格。对于这种情况,文本函数返回警报中的第二个空格,因此它显示为空白。

删除内容前的缩进/空格,您应该会看到预期的结果。