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')
如有不妥,还请斧正!
作者:PowerDK
出处:http://www.cnblogs.com/PowerDK/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如有问题或建议,请多多赐教,非常感谢。