jQuery span类选择器

时间:2015-03-24 06:53:14

标签: javascript jquery html jquery-selectors

我的内部有一个文本,例如:

<span class="characters-count">&#40;160 Characters Left&#41;</span>

在这种情况下给定一个类.characters-count,当我尝试使用jQuery的类选择器来获取span中的文本时:

$(".characters-count")[0].text();

它返回undefined!

但是这个选择器效果很好:

$("span.characters-count").text();

任何人都可以解释发生了什么?

4 个答案:

答案 0 :(得分:1)

当你使用$(&#34; .characters-count&#34;)[0] check DEMO

时,你需要使用innerText而不是text()
 $(".characters-count")[0].innerText

答案 1 :(得分:1)

$("span.characters-count").text(); 

在我们的例子中,您使用的是具有text方法

的jQuery Object
$(".characters-count")[0].text();

在这种情况下,您使用的是actual DOM element(如document.getElementByClassName('characters-count')[0]),但没有text方法

答案 2 :(得分:1)

console.log($(".characters-count:first").text())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="characters-count">&#40;160 Characters Left&#41;</span>

尝试这样的事情:

$(".characters-count:first").text()

点击这里,为什么它不适合你。

//This will return dom element, so it doesn't have `text()` method, that's why it was throwing error for you.
    console.log($(".characters-count:first")[0]); 


// This will return object of an element, you can use jQuery selectors to get first element from collection and set text to it
     console.log($("span.characters-count"));
     console.log($("span.characters-count:first").text

);

答案 3 :(得分:1)

使用

$(".characters-count").text();  

Demo