jquery属性操作 html() prop()

2024-08-21 04:32

本文主要是介绍jquery属性操作 html() prop(),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、html() 取出或设置html内容

// 取出html内容var $htm = $('#div1').html();// 设置html内容$('#div1').html('<span>添加文字</span>');

使用html()相当于原生javascriptinnerHtml,即可以获取元素的之间的html内容,还可以创建新的html元素。

示例:首先写一个取出html内容的示例

13423234-dac175fed88848e5.png

示例:修改#box1的div的html内容。

13423234-5732ff99cb34225e.png
13423234-681ad1e860e4282e.png

可以看到内部的html内容已经修改了。

示例:给新增的div设置class样式类,并提前写好样式类

13423234-2a8db2b1e9aeae97.png

从上面这个示例可以看出,如果我们需要随时新建一个新的元素,那么可以提前写好样式,然后在创建html元素的时候加上即可。

2、prop() 取出或设置某个属性的值

// 取出图片的地址var $src = $('#img1').prop('src');// 设置图片的地址和alt属性$('#img1').prop({src: "test.jpg", alt: "Test Image" });

这是关于设置属性值的操作。我们可以继续上面的示例,获取一下新创建内部div的属性值。

示例:获取新创建div的class属性值

13423234-387b8bee1ceedb5e.png

示例:设置一个新的属性值

13423234-7c54a96727a4a659.png

关于评论中innerHTML不会执行脚本的回复:是可以执行脚本的。

13423234-4032e22bbe13fe8f.png

有位这么积极的朋友提出观点我很高兴哈,但是innerHTML不会执行脚本这个,我是想说,这位朋友把innerHTMLinnerText搞混了。

那么下面我来演示一下innerHTML执行脚本的示例,如下:

首先编写一个不执行任何js的HTML,就一个div

13423234-ff05115c2a96653a.png

然后编写JavaScript,使用innerHTML写入一个a标签,然后a标签点击执行一个js脚本

13423234-47ad9d86997b8be3.png

点击a标签,触发执行js方法,如下:

13423234-d1d8f948a15a6b48.png

然后可以发现,脚本执行了。

<!DOCTYPE html>
<html>
<head><title></title><script type="text/javascript" src="jquery/jquery-3.3.1.min.js"></script><script type="text/javascript">window.onload = function(){var div = document.getElementById('box1');// alert(div.innerHTML);js_method = function(){alert("点击a标签");}// div.innerText = "<a href='javascript:js_method();'>点击ok</a>";div.innerHTML = "<a href='javascript:js_method();'>点击ok</a>";// $('#box1').html("<a href='javascript:js_method();'>点击ok</a>");}</script>
</head>
<body><div id="box1">这是一个div</div>
</body>
</html>

那么如果执行的使用jqueryhtml()呢?

13423234-bdf02e5e38fa7008.png
13423234-1ec91445492fba9c.png
<!DOCTYPE html>
<html>
<head><title></title><script type="text/javascript" src="jquery/jquery-3.3.1.min.js"></script><script type="text/javascript">window.onload = function(){// var div = document.getElementById('box1');// alert(div.innerHTML);js_method = function(){alert("点击a标签");}// div.innerText = "<a href='javascript:js_method();'>点击ok</a>";// div.innerHTML = "<a href='javascript:js_method();'>点击ok</a>";$('#box1').html("<a href='javascript:js_method();'>点击ok</a>");}</script>
</head>
<body><div id="box1">这是一个div</div>
</body>
</html>

你可以发现innerHTMLhtml()都是可以解析html基本元素语句,这个才是可以执行脚本的关键。

关于评论中说innerHTML不能执行脚本, 继续真相图:

13423234-9e9ad219baafed43.png

其实,关键一点是看方法是否有解析html标签等元素,如果不能解析,就无法执行脚本。

例如:使用innerText就无法执行脚本,如下:

13423234-2a8a149e8732af36.png

哦,还有jquery的text()也是无法解析html,所以也无法执行脚本

13423234-6a5f35d0547b3269.png

大概如此,祝五一快乐!

13423234-0e3934319aa622f6.png

这篇关于jquery属性操作 html() prop()的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加

css渐变色背景|<gradient示例详解

《css渐变色背景|<gradient示例详解》CSS渐变是一种从一种颜色平滑过渡到另一种颜色的效果,可以作为元素的背景,它包括线性渐变、径向渐变和锥形渐变,本文介绍css渐变色背景|<gradien... 使用渐变色作为背景可以直接将渐China编程变色用作元素的背景,可以看做是一种特殊的背景图片。(是作为背

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper