jQuery中的html,val,text区别

  在项目开发中,写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>

    这是html文档结构,现在我们执行下面js代码看看所取得的是什么的东西

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的属性,那么我们在取值的时候可以用这样

  

1 $("#divTest").attr('value')

 

 

  如有不妥,还请斧正!

 

posted @ 2014-10-28 22:01  PowerDK  阅读(11933)  评论(3编辑  收藏  举报