jQuery中html()、val()、text()的区别; javascript中innerHTMl、innerText、outHTML的区别

本文主要是介绍jQuery中html()、val()、text()的区别; javascript中innerHTMl、innerText、outHTML的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天在使用JavaScript时,用到了value值,忽然想到了jQuery中的html()、val()和text(),就查看了一下参考资料,整理下他们之间的差异,方便以后查看。

1.val():用来读取或者设置修改匹配的value值。(如果是select的多选项,则返回相匹配的数组)

$("#input1").val();//获取value值
$("#input1").val("Single2"); //设置value值
$("#select1").val();//test1,test2
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

2.text():用来读取或者设置匹配元素的文本内容,(如果元素中包含元素,则只会读取该元素的文本内容,不会读取标签,这是和html()最大的区别)

$("p").text();///读取所有段落的文本内容
$("p").text("abcdefg");///设置所有段落的文本内容为abcdefg
  • 1
  • 2
  • 1
  • 2

3.html():用来读取或者设置第一个匹配元素的内容(即标签内包含的所有内容,能够读取到所包含的标签)

$("div").html();//读取第一个div中所包含的所有内容
$("div").html("<p>abcdefg<p>");//设置第一个div中所包含的所有内容
  • 1
  • 2
  • 1
  • 2

说到jQuery的读取设置标签内容,很容易牵扯到JavaScript的innerHTML、outHTML、innerText: 
1.innerHTML:这个是w3c标准的属性,能够读取或者设置元素的内容,jQuery中的html()功能是根据原生js的innerHTML实现的,不过因为innerHTML自身的兼容性问题,所以html()(如果innerHTML存在问题,则通过append()添加字符串)和innerHTML还有一定的差异性

var ss=document.getElementById("test");
var ss_html=ss.innerHTML;//获取到的结果和html()一致ss.innerHTML="abcdefg";
  • 1
  • 2
  • 1
  • 2

innerHTML在IE6-9中动态给table添加内容会直接报错,这是因为col, colGroup, frameSet, html, head, style, table, tBody, tFoot, tHead, title, and tr objects中的innerHTML只能读取,可以通过append来修改内容

2.innerText:获取设置匹配元素内的文本内容,这个不是w3c标准的属性,会有浏览器兼容性问题,在火狐下是不支持这个属性的,不过可以用textContent来替代

ss.innerText="abcdefg";
function getInnerText(element) {return (typeof ele.textContent == "string") ? element.textContent : element.innerText;
}
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

3.outHTML:获取或者设置匹配元素的html(包含匹配的标签,不仅仅是标签所包含的内容),这个不是w3c的标准属性,存在浏览器兼容性(ff 不支持该属性)

这篇关于jQuery中html()、val()、text()的区别; javascript中innerHTMl、innerText、outHTML的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/671277

相关文章

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

使用Spring Cache本地缓存示例代码

《使用SpringCache本地缓存示例代码》缓存是提高应用程序性能的重要手段,通过将频繁访问的数据存储在内存中,可以减少数据库访问次数,从而加速数据读取,:本文主要介绍使用SpringCac... 目录一、Spring Cache简介核心特点:二、基础配置1. 添加依赖2. 启用缓存3. 缓存配置方案方案

Java实现复杂查询优化的7个技巧小结

《Java实现复杂查询优化的7个技巧小结》在Java项目中,复杂查询是开发者面临的“硬骨头”,本文将通过7个实战技巧,结合代码示例和性能对比,手把手教你如何让复杂查询变得优雅,大家可以根据需求进行选择... 目录一、复杂查询的痛点:为何你的代码“又臭又长”1.1冗余变量与中间状态1.2重复查询与性能陷阱1.

深度剖析SpringBoot日志性能提升的原因与解决

《深度剖析SpringBoot日志性能提升的原因与解决》日志记录本该是辅助工具,却为何成了性能瓶颈,SpringBoot如何用代码彻底破解日志导致的高延迟问题,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言第一章:日志性能陷阱的底层原理1.1 日志级别的“双刃剑”效应1.2 同步日志的“吞吐量杀手”

Spring创建Bean的八种主要方式详解

《Spring创建Bean的八种主要方式详解》Spring(尤其是SpringBoot)提供了多种方式来让容器创建和管理Bean,@Component、@Configuration+@Bean、@En... 目录引言一、Spring 创建 Bean 的 8 种主要方式1. @Component 及其衍生注解

Go之errors.New和fmt.Errorf 的区别小结

《Go之errors.New和fmt.Errorf的区别小结》本文主要介绍了Go之errors.New和fmt.Errorf的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考... 目录error的基本用法1. 获取错误信息2. 在条件判断中使用基本区别1.函数签名2.使用场景详细对

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

Java利用@SneakyThrows注解提升异常处理效率详解

《Java利用@SneakyThrows注解提升异常处理效率详解》这篇文章将深度剖析@SneakyThrows的原理,用法,适用场景以及隐藏的陷阱,看看它如何让Java异常处理效率飙升50%,感兴趣的... 目录前言一、检查型异常的“诅咒”:为什么Java开发者讨厌它1.1 检查型异常的痛点1.2 为什么说

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10