拥有下一个简单的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/
谢谢!
答案 0 :(得分:1)
试试这个(你需要修剪文字)
$(function(){
var text = $.trim($('#content').text()),
word = text.split(' ');
alert(word[1])
});
答案 1 :(得分:0)
你需要修剪text / html,因为它们在内容之前和之后都有空格
$(function(){
var text = $('#content').text(),
word = $.trim(text).split(' ');
console.log(word[1])
})
演示:Fiddle
否则,您需要将html编写为<div id="content">This is a test</div>
答案 2 :(得分: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>
答案 3 :(得分:0)
内容中有3个缩进空格。对于这种情况,文本函数返回警报中的第二个空格,因此它看起来是空白的。
删除内容前的缩进/空格,您应该看到预期的结果。