jQuery属性与样式的学习

jQuery属性与样式的学习

开发工具与关键技术:Visual Studio 2015与jQuery
作者:刘鑫婷
撰写时间:2019年3月30日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
一、jQuery属性与样式之.val()方法
1、在jQuery中.val()方法主要用来处理表单元素的值。它总共有三种用法:
(1).val()没有参数时,获取的是元素集合中的第一个元素的当前值(获取值);
(2).val(value),设置元素集合中所有元素的值(设置值);
(3).val(function),返回设置值的函数(返回值)。
例如:
var AcademeID = $(“#sltAcademe”).val();//获取学院ID
$(“#modAcademe”).val(data[0].AcademeID);//设置学院ID
值得注意的是:  (1).val()方法一般是用来设置表单字段的值;
              (2)第三种用法非常少用;
              (3)但.val()方法获取不到标签内的文本。例如:
<div id="div">第二个元素</div>
console.log($("#div").val());//没有输出值
console.log($("#div").text());
console.log($("#div").html());
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190331181054172.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDYyMTc0Ng==,size_16,color_FFFFFF,t_70)
2、用.val()来处理表单元素select且没有选中项时,则返回null。但是当select元素具有multiple属性(多选属性)且至少有一个选中项时,则返回一个数组,并且在这个数组中具有所有选中项的值。
二、jQuery属性与样式之.html()方法以及.text()方法
1、.html()方法和.text()方法是处理读取、修改元素的html结构和文本内容等操作的方法。
2、.html()方法是一个获取集合中第一个匹配元素的HTML内容或者是设置所有匹配元素的
html内容的方法。它总共有三种用法:
(1).html() 方法没有值,是获取集合中第一个匹配元素的HTML内容(获取子元素);
(2).html(htmlString) 方法是设置所有匹配元素的html内容;
(3).html(function(index,oldhtml)) 方法是返回设置html内容的一个函数。
值得注意的是:.html()方法在JavaScript中是使用innerHTML属性来处理的,所以我们要时刻记住它是针对整个HTML内容的,而不仅仅是文本内容。
3、.html()处理的是元素内容,所以只能在HTML文档中使用。
4、.text()方法处理的是文本内容,也只获取匹配元素的文本内容。
5、.text()是一个能获取到所有匹配元素的合并文本(由所有匹配元素的文本内容组合起来的文本),或者设置指定元素的文本内容的方法,获取的文本中包括他们的后代。
6、.text()方法也有三种用法,他们分别是:
       (1).text() 方法是获取到所有匹配元素的合并文本,文本中包括他们的后代;
       (2).text( textString ) 方法是设置指定元素的文本内容;
       (3).text( function(index, text) ) 方法是返回设置文本内容的一个函数。
值得注意的是:.text()结果返回的只是一个字符串,其中包括所有匹配元素的合并文本。
又例:
<div class="left div">
   <div>
        <a>1</a>
        <a>2</a>
        <a>3</a>
    </div>
    <h4>通过html方法获取内容</h4>
    <p class="one"></p>
    <h4>通过text方法获取内容</h4>
    <p class="two"></p>
</div >
<script type="text/javascript"> 
        $('.one').html($(".div").html());//.html()是整个html文档结构
        $('.two').text($(".div").text());//.text()是文本内容的合集
</script>
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190331181019778.PNG)
7、.html与.text的操作方法是一样的,只是具体针对的处理对象有所不同。但当处理的对象都是一个子文本节点时,那么html与text的处理的结果是一样的。
8、.text()方法可以兼容所有浏览器。但.html()方法不可以,它在火狐上不能使用,这是因为
火狐不支持innerText属性,而innerText属性是.html()方法在JavaScript中处理元素内容的方法。
9、不论是.html()方法,还是.text()方法和.val()方法,它们都是用来读取选定的元素的内容的方法;但.html()是用来读取元素的html内容和html标签;而.text()是用来读取元素的纯文本内容和它的后代元素;最后,.val()是用来读取表单元素的"value"值。
10、当然,我们都要知道.html()和.text()方法是不能在表单元素上使用的;而.val()只能在表单元素上使用。
11、当.html()方法和.val()方法使用在多个元素上时,只会读取第一个;而.text()方法无论使用在多少个元素上,它都会读取所有选中元素的文本内容。
12、.html(htmlString)方法和.text(textString)方法以及.val(value)方法,都是用来替换选中元素
的内容的,如果这三种方法同时运用在多个元素上,那么所有选中元素的内容都将会被替换掉。
13、.html(),.text(),.val()则都是使用回调函数的返回值来动态的改变多个元素的内容的方法。

猜你喜欢

转载自blog.csdn.net/weixin_44621746/article/details/88932811