2009-04-30 56 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> 
相关问题