Jquery .text()调用返回null?

时间:2010-03-13 07:21:16

标签: javascript jquery html jquery-selectors

我正在练习Jquery,我写了这个简单的Jquery语句:

var someText = $("table tr td").text();

这是否应该返回在表中找到的tr中找到的所有td元素文本?我该如何解决?目前,当我运行它时,它表示table tr td为空,但我在我正在测试的页面上有一个表。

谢谢!

2 个答案:

答案 0 :(得分:2)

亚历,

nvl在text()上纠正了我 - 将其功能与html()混淆了一分钟,所以你可能应该返回某些东西

尝试将代码包装在此:

$(document).ready(function() {
    // Your code here
});

如果你不这样做,你可能会收到一个空响应,因为浏览器实际上还没有任何HTML内容可以执行你的功能!

详细信息: http://www.learningjquery.com/2006/09/introducing-document-ready

使用此示例工作HTML文档:

<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript">
  $(document).ready(function() {
      var someText = $("table tr td").text();
      alert(someText);
  });

</script>
</head>
<body>
    <table>
        <tr>
            <td>help</td>
            <td>me</td>
        </tr>
    </table>
</body>
</html>

确实在警告框中输出'helpme'。

答案 1 :(得分:2)

来自jQuery

  

<强>的.text()
  获取匹配元素集合中每个元素的组合文本内容,包括它们的后代。

我测试了它,它确实返回了匹配元素的连接文本。


<ul>
  <li><a href="#">Home</a></li>
  <li><a href="#">Admission</a></li>
  <li><a href="#">Courses</a></li>
  <li><a href="#">Faculty</a></li>
  <li><a href="#">Research</a></li>
  <li><a href="#">Contact</a></li>
</ul>

在上面的html上应用.text()

alert( $("ul li").text() );  
  

“HomeAdmissionCoursesFacultyResearchContact”