html() test() val()的区别 (推荐)

链接:https://blog.csdn.net/qq_26250427/article/details/78179108

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

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

  

首先jquery的attr()方法允许两个参数,如果值给一个参数则返回的是元素的属性的值,两个参数可以设置一个元素属性的值为第二个参数。
2、给div元素属性赋值的代码如下:

    <script type="text/javascript">
        $('#div1').attr('class','baidu');
  
$('#div2').attr('value','2');

    </script>

效果
<div id="div1" class="baidu"></div>
<
div
 
id
=
"div2"
 value
=
"2"></div>

html()可以覆盖原内容
test() 获取元素下所有内容,包括html,直到元素结束
val()获取元素value的值
 

猜你喜欢

转载自blog.csdn.net/qq_34107571/article/details/85774367