2009-04-30 83 views

回答

249

.val()適用於輸入元素(或任何具有值屬性的元素?)和.text()不適用於輸入元素。 .val()獲取輸入元素的值 - 無論類型如何。 .text()得到所有的匹配元素的的innerText(未HTML):

.text()

的結果是包含所有 匹配 元素的組合的文本內容的字符串。此方法適用於 HTML和XML文檔。輸入元素上不能使用 。對於輸入 字段文本,請使用val屬性。

.val()

獲取的值屬性的第一個匹配元素的

+3

有趣的事情來從HTML元素的值 - 取考慮到它們可能不等於'textarea' 'someTextArea.html()!== someTextArea.val()' – 2015-07-31 14:37:57

+0

不要使用textarea.html('content')加載內容。我用jQuery動態加載了一些內容 - 有趣的部分是當我點擊保存按鈕時。在該行動之後,textarea中的內容不再改變。用.val('content')設置內容時,這個問題沒有出現。無法弄清楚爲什麼,但我認爲這與DOM緩存和這兩種方法的不同行爲有關。 – 2016-07-01 07:51:23

22

文本的內容()返回所有匹配元素的組合的文本內容(例如,P,DIV ,等等) val()用於獲取輸入元素的值(如輸入,選擇等)

根據官方文檔文本()不應使用輸入元素

0

val()用於從所有html輸入類型(如複選框,文本等)中獲取值,其中用戶可以輸入一個選項值爲 。 例如: -

<input type="text" id="txt_name" /> 
<input type="checkbox" name="vehicle" value="Bike" id="chk_byk" class="ss">bike<br> 
<script type="text/javascript"> 
$(document).ready(function() { 

      $("#btn_submit").click(function() { 
       alert($("#chk_byk").val()); 
      }); 

      }); 


    </script> 

,其中文本()被用在用戶不會像(P,DIV等)互動

<p id="p1">Hi how are u??</p> 
<div id="dv5">Debendra</div> 

<script type="text/javascript"> 

     $(document).ready(function() { 

      $("#btn_submit").click(function() { 
       alert($("#dv5").text()); 
      }); 

      }); 


    </script> 
相關問題