jQuery中的.html()和.text()及.val()区别

  1.  .html()

     .html():获取集合中第一个匹配元素的HTML内容。这个函数不能用于XML文档。但可以用于XHTML文档

     .html( htmlString ):设置每一个匹配元素的html内容。这个函数不能用于XML文档。但可以用于XHTML文档

     .html( function(index, oldhtml)):return设置HTML内容的一个函数。index可选。接收选择器的 下标 位置;oldhtml可选。接收选择器的当前内容。

     

  2.  .text()

     .text():获取匹配元素集合中每个元素的合并文本内容,包括他们的后代。这个方法对HTML和XML文档都有效。

     .text( textString ):设置匹配元素内容的文本

     .text( function(index, oldtext)):return设置文本内容的一个函数。index可选。接收选择器的 下标 位置;oldtext可选。接收选择器的当前内容。

  3.  .val()

     .val():获取匹配的元素集合中的第一个元素的当前值

     .val(value):设置匹配的元素集合中的每个元素的值

     .val( function(index, oldvalue) ) return设置文本内容的一个函数。index可选。接收选择器的 下标 位置;oldvalue可选。接收选择器的当前内容。

  注意事项:

  1.  .html():方法内部使用的是DOM的innerHTML属性来处理的,所以在设置与获取上需要注意的一个最重要的问题,这个操作是针对整个HTML内容(不仅仅是文本内容,元素标签也包含在里面)
  2.  .text():结果返回一个字符串,包含所有匹配元素的合并文本
  3.  .val():
    1.   通过.val()处理select元素,当没有选择项被选中,他返回null
    2.   .val()方法多用来设置表单的字段的值
    3.   如果select元素有multiple(多选)属性,并且至少一个选择项被选中,.val()方法返回一个数组。这个数组包含每个选中的选择项的值

 

  .html(),.text()和.val()的差异总结:  

 

    .html(),.text(),.val()三种方法都是用来读取选定元素的内容;

    .html()是用来读取元素的html内容(包括html标签);

    .text()用来读取元素的纯文本内容,包括其后代元素;

    .val()是用来读取表单元素的"value"值;

    .html()和.text()方法不能使用在表单元素上,而.val()只能使用在表单元素上;

    .html()方法使用在元素集合上时,只读取第一个元素;.val()方法和.html()相同,如果其应用在元素集合上时,只能读取第一个表单元素的"value"值,但是.text()不一样,如果.text()应用在多个元素上时,将会读取所有选中元素的文本内容;

    .html(htmlString),.text(textString)和.val(value)三种方法都是用来替换选中元素的内容,如果三个方法同时运用在多个元素上时,那么将会替换所有选中元素的内容;

    .html(),.text(),.val()都可以使用回调函数的返回值来动态的改变多个元素的内容;

 

 

 

 

posted @ 2017-04-26 01:22  章洵  阅读(7814)  评论(0编辑  收藏  举报