1. 程式人生 > >html() test() val()的區別 (推薦)

html() test() val()的區別 (推薦)

連結:https://blog.csdn.net/qq_26250427/article/details/78179108

在專案開發中,寫jQuery程式碼有時候會搞混淆一下東西,現在寫一下demo來列出jQuery的.html(),.text(),.val()的區別。

  1. html()取得第一個匹配元素的內容,簡單來說就是所取得的標籤所包含的所有東西。

      假如括號中有帶val的話,最簡單的理解就是將上一步取得的內容全部替換成括號中val,下面看demo


1     <div id="divTest" value='2'>
2         這是div的內容!
3         <label id="lblText">
4             這是label的內容!
5         </label>
6         <div id="divTest2">
7             第二個div內容!
8         </div>
9     </div>

1  $("#divTest").html()  //所取得內容:這是div的內容!<label id="lblText">這是label的內容!</label> <div id="divTest2">第二個div內容!</div>
1  $("#divTest").html("我要修改了!")  //執行修改
    上面修改之後,我們接著獲取一下

 1 $("#divTest").html() //所取得內容:我要修改了! 

 

  注:html()方法可以用於XHTML文件,但不能用於XML文件!

 

  2.text():取得所有匹配元素的內容,結果是由所有匹配元素包含的文字內容組合起來的文字,同理,text(val)是設定所有匹配元素的文字內容

  

1 $("#divTest").text() //所取得內容:這是div的內容!這是label的內容!第二個div內容!
2                             //可見所取得是標籤內的東西,但不會取標籤
  注:這個方法對HTML和XML文件都有效

 

  3.val()常用來操作標準的表單元件物件,如button,text,hidden

  例如添加了一個select元素以及一個hidden的元素


1     <select id="selectVal">
2         <option value="1" selected="selected">1</option>
3         <option value="2" >2</option>
4     </select>
5     <input type="hidden" id="hidVal" value="1"/>

  現在我們來取一下他們的值

1 $("#selectVal").val()  //取得值為:1  同理這個也是 $("#hidVal").val()
  

  有時候開發的時候會在一個div內設定一個value的屬性,那麼我們在取值的時候可以用這樣

  

首先jquery的attr()方法允許兩個引數,如果值給一個引數則返回的是元素的屬性的值,兩個引數可以設定一個元素屬性的值為第二個引數。
2、給div元素屬性賦值的程式碼如下:

    <script type="text/javascript">
        $('#div1').attr('class','baidu');
  
$('#div2').attr('value','2');

    </script>

效果
<div id="div1" class="baidu"></div>
<
div
 
id
=
"div2"
 value
=
"2"></div>

 

html()可以覆蓋原內容
test() 獲取元素下所有內容,包括html,直到元素結束
val()獲取元素value的值