本文翻译自jQuery Cookbook (O’Reilly 2009) 1.15 Getting and Setting Text Content
需求
获取或设定当前网页中的HTML片段。
解决方案
jQuery提供了一个叫做html()的方法来获取或设定HTML元素的源码。下面的例子用该方法获取HTML文档中的<p>元素,并对该元素内的HTML源码进行设定,最后再进行访问:
<!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').html('<strong>Hello World</strong>, I am a <em><p></em> element.'); alert(jQuery('p').html()); </script> </body> </html>
运行上面的代码后,浏览器会在弹出的警告框中显示之前用html()方法设定的<p>元素中的内容。
讨论
html()方法使用了DOM节点的innerHTML属性来访问、设定HTML片段。需要注意的是,该方法对于XML文档无效(但对于XHTML文档有效)。