本文翻译自jQuery Cookbook (O’Reilly 2009) 1.16 Getting and Setting Text Content
需求
访问或设定HTML元素内的文本。
解决方案
jQuery提供了一个叫做text()的方法来访问或设定HTML元素内的文本。下面的例子用text()方法设定HTML文档中<p>元素内的文本,然后进行访问:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> </head> <body> <p></p> <script type="text/JavaScript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"> </script> <script type="text/JavaScript"> jQuery('p').text('Hello World, I am a <p> element.'); alert(jQuery('p').text()); </script> </body> </html>
运行上面的代码后,浏览器会在警告弹出框中显示通过text()方法得到的<p>元素内的文本。
讨论
与html()方法相比,除了会将HTML标签符进行转义(用HTML编码代替<和>),text()方法并没有什么不同。这意味着,如果向text()方法传入的字符串参数中含有标签,那么其中的标签符<和>将被转化为下列两个相应的HTML编码:
<
>