jQuery中的text()、html()和val()以及javaScript中的innerText、innerHTML和value

时间:2022-04-24 03:30:57

*jQuery中设置或者获取所选内容的值:
text();设置或者获取所选元素的文本内容;

html();设置或者获取所选元素的内容(包括html标记);

val();设置或者获取表单字段的值(前提是表单设置了value属性);

(text()和html()的区别是:前者是处理的文本内容,只能写文本如果写了上面的标记则会以文本形式输出;后者可以解析文本中的html标记,就是你可以添加像<a></a>、<p></p>等标记,最后会解析为其效果。
)

*JavaScript中设置或者获取所选内容的值

同理innerText、innerHTML和value,

innerText和innerHTML都是将字符串放入hmtl标签中的一个函数
但是innerHTMl他可以解析hmtl标记
例如 你放入一个<a>斯蒂芬</a>  如果在DIV中它里面就会出现一个带下划线的a元素;
但是innerText只支持普通字符串;

<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js"></script>
<script>
$(document).ready(function(){
  $("#btn1").click(function(){
    alert("Text: " + $("#test").text());
  });
  $("#btn2").click(function(){
    alert("HTML: " + $("#test").html());
  });
});
</script>
</head>

<body>
<p id="test">这是段落中的<b>粗体</b>文本。</p>
<button id="btn1">显示文本</button>
<button id="btn2">显示 HTML</button>
</body>

</html>

  

<!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js"></script>
<script>
function getInnerHTML(){
alert(document.getElementById("btn1").value);
}
</script>
</head>

<body>
<p id="test">这是段落中的<b>粗体</b>文本。</p>
<button id="btn1"  onclick="getInnerHTML()"  >显示文本</button>
<button id="btn2">显示 HTML</button>
</body>

</html>

  

jQuery和JavaScript的区别总结:

*前者click事件是获取元素id进行处理;后者是onclick="getInnerHTML()";

*前者获取元素值时是text();后者是innerText,无();设置值时,前者是text("jing"),后者是innerText="jing";

*注意:两者的设置时,会覆盖原有内容,如果想要插入,使用插入方法。

 

另:

.html()用为读取和修改元素的HTML标签    对应js中的innerHTML

 .html()是用来读取元素的HTML内容(包括其Html标签),.html()方法使用在多个元素上时,只读取第一个元素

 

.text()用来读取或修改元素的纯文本内容  对应js中的innerText

  text()用来读取元素的纯文本内容,包括其后代元素;.text()方法不能使用在表单元素上

 

.val()用来读取或修改表单元素的value值

    .val()是用来读取表单元素的"value"值,.val()只能使用在表单元素上

 

 

关于三者的区别

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

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