不傳參數的text()方法在獲取文本內容時,會把子元素的文本也獲取過來(會刪除 HTML 標記),例子:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>無標題文檔</title> </head> <body> <div id="container"> aaa <div>bbb</div> </div> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> alert($('#container').text());//aaa bbb </script> </body> </html>
當jQuery選擇器選中的元素有多個時,它會返回所有匹配元素的組合的文本內容(會刪除 HTML 標記)。W3cschool上面的一個例子
<!doctype html> <html> <head> <meta charset="utf-8"> <title>無標題文檔</title> </head> <body> <p>This is a paragraph.</p> <p>This is another paragraph.</p> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> alert($("p").text());//返回兩段文本內容 </script> </body> </html>
傳參數的text()方法用於設置值時,它會覆蓋被選元素的所有內容。里面可以傳標簽內容。如:$("p").text(aaa<b>bbb</b>)
對於除表單外的元素,都可以用text()獲取和設置元素的內容。
對於表單元素,有個value屬性,value屬性的內容也會顯示在頁面。這種情況則用jquery的val()方法獲取和設置。