2013-09-24 37 views
0

具有下一个简单的html代码:获取内部文本并分割它。使用的innerHTML和Javascript问题分裂

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

我不understad为什么这是确定:

$(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/

谢谢!

回答

0

尝试这个(你需要修剪文字)

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

DEMO.

0

您需要修剪的text/html,因为它们会前和内容后有空格

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

演示:Fiddle

否则你需要编写你的HTML作为​​

+0

谢谢大家!所以那是我的问题... – Angel

0

尝试使用此代码

<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> 
0

你有3个空格的内容缩进。文本函数正在返回警报中的第二个空间,因此它被视为空白。

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