JQuery中的html(),text(),val()区别
1.HTML
html():取得第一個匹配元素的html內容。這個函數不能用于XML文檔。但可以用于XHTML文檔
html(val):設置每一個匹配元素的html內容。這個函數不能用于XML文檔。但可以用于XHTML文檔。
2.TEXT
text():取得所有匹配元素的內容。
結果是由所有匹配元素包含的文本內容組合起來的文本。這個方法對HTML和XML文檔都有效。
text(val):設置所有匹配元素的文本內容
與 html() 類似, 但將編碼 HTML (將 "<" 和 ">" 替換成相應的HTML實體).
3.VAL
val():獲得第一個匹配元素的當前值。
val(val):設置每一個匹配元素的值。
?
上面的內容是在JQuery的幫助文檔里拷貝的,也都不廢話多說了。下面是自己做的一些練習,代碼如下:
在做練習的時候我發現了html和text的另一個不同的地方
html()去元素的內容的時候,能將所選定的元素下面的格式也取到了。
如:<div id="divShow"><b><i>Write Less Do More</i></b></div>
如果我們用var strHTML = $("#divShow").html();取的話,
結果是:<b><i>Write Less Do More</i></b>
如果我們用var strHTML2 = $("#divShow b i").html();取的話
結果是Write Less Do More
而text沒有第一種情況,
如果我們var strText = $("#divShow").text();取的話
結果是Write Less Do More
?
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
? <head>
??? <base href="<%=basePath%>">
? <script src="js/jquery.js" type="text/javascript"></script>
??? <!--
??? <script src="http://code.jquery.com/jquery-latest.js"></script>
???? -->
??? <title> 獲取或設置元素的內容</title>
??? <style type="text/css">
?????? body{font-size:15px;text-align:center}
?????? div{border:solid 0px #666;padding:5px;width:220px;margin:5px}
??? </style>
??? <script type="text/javascript">
?????? $(function() {
?????????? var strHTML = $("#divShow").html();// 獲取HTML 內容(包含div下面的兩個格式)
?????????? var strHTML2 = $("#divShow b i").html(); //獲取HTML內容
?????????? var strHTML3 = $("div").html();
?????????? var strText = $("#divShow").text();// 獲取文本內容
?????????? var strText2 = $("div").text();
??????????
?????????? $("#divHTML").html(strHTML);// 設置HTML 內容
?????????? $("#divHTML2").html(strHTML2); //設置HTML內容
?????????? $("#divHTML3").html(strHTML3); //設置HTML內容
?????????? $("p").html(strHTML);
??????????
?????????? $("#divText").text(strText);// 設置文本內容
?????????? $("#divText2").text(strText2);// 設置文本內容
?????????? $("a").text(strText);
??????????
?????????? $("select").change(function() { // 設置列表框change 事件
????????????? // 獲取列表框所選中的全部選項的值
????????????? alert($("select").val());
????????????? var strSel = $("select").val().join(",");
????????????? $("input").val(strSel); // 顯示列表框所選中的全部選項的值
?????????? })
?????? })
??? </script>
? </head>
? <body>
??? <table border="1" bordercolor="#A9A9A9" cellspacing="0">
??? <tr><td>******************************</td><td>*******************************************</td></tr>
??? <tr>
??? <td><div id="divShow"><b><i>Write Less Do More</i></b></div></td>
?????? <td>這是原內容</td>
??? </tr>
??? <tr>
??? <td><div id="divShow"><b><i>Write XXXX Do XXXX</i></b></div></td>
?????? <td>這是原內容</td>
??? </tr>
<tr><td>******************************</td><td>*******************************************</td></tr>
??? <tr>
?????? <td><div id="divHTML">1</div></td>
??? ??? <td>獲取原內容(連帶內容的格式)后以html方式輸出</td>
??? </tr>
??? <tr>
? ????? <td><div id="divHTML2">2</div></td>
? ????? <td>獲取原內容(不帶內容的格式)后以html方式輸出</td>
??? </tr>
??? <tr>
? ????? <td><div id="divHTML3">3</div></td>
? ????? <td>獲取原內容(獲取第一個匹配元素的內容)后以html方式輸出</td>
??? </tr>
??? <tr>
? ????? <td><p></p></td>
? ????? <td>HTML方式設置段落的文本</td>
??? </tr>
??? <tr>
? ????? <td><p></p></td>
? ????? <td>如果這個也有內容了,就是設置每個匹配元素的內容</td>
??? </tr>
<tr><td>******************************</td><td>*******************************************</td></tr>
??? <tr>
??? <td><div id="divText">4</div></td>
??? <td>獲取原內容后以text方式輸出</td>
??? </tr>
??? <tr>
??? <td><div id="divText2"></div></td>
??? <td>獲取原內容(獲取所有匹配元素的內容)后以text方式輸出</td>
??? </tr>
??? <tr>
? ????? <td><a></a></td>
? ????? <td>TEXT方式設置段落的文本</td>
??? </tr>
??? <tr>
? ????? <td><a></a></td>
? ????? <td>如果這個也有內容了,就是設置每個匹配元素的內容</td>
??? </tr>
??? <tr><td>******************************</td><td>*******************************************</td></tr>
??? <tr>
??? <td>
???
??? <select multiple="multiple"style="height:96px;width:85px">
?????????? <option value="1">Item 1</option>
?????????? <option value="2">Item 2</option>
?????????? <option value="3">Item 3</option>
?????????? <option value="4">Item 4</option>
?????????? <option value="5">Item 5</option>
?????????? <option value="6">Item 6</option>
?????? </select>
?????? <select>
?????????? <option value="7">Item 7</option>
?????????? <option value="8">Item 8</option>
?????????? <option value="9" selected>Item 9</option>
??????????
?????? </select>
??? </td>
??? <td>
??? </td>
??? </tr>
??? <tr>
??? <td><input ></input></td>
??? <td><input ></input></td>
??? </tr>
??? </table>
? </body>
</html>
大家也都可以自己去驗證下,上面是我做的實驗,我用的JQuery是1.6
轉載于:https://www.cnblogs.com/ranran/p/3949168.html
總結
以上是生活随笔為你收集整理的JQuery中的html(),text(),val()区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vector容器与find算法
- 下一篇: 【转】C# typeof()实例详解