正则表达式替换html元素属性的方法


Posted in Javascript onNovember 26, 2016

正则表达式替换任意html元素任意属性,或增加任意属性。

/**
 * 替换html中任意tag内任意attr值
 * @param src_str
 * @param tag
 * @param attr
 * @param val
 * @returns {*}
 */
replace_html_tag_attr: function(src_str, tag, attr, val) {
  if(typeof src_str === 'undefined' || typeof tag === 'undefined' || typeof attr === 'undefined' || typeof val === 'undefined') {
    return '';
  }

  var reg = new RegExp('<' + tag + '[^>]*(' + attr + '=[\'\"](\\w*%?)[\'\"])?[^>]*>', 'gi');
  return src_str.replace(reg, function (match) {
    if(match.indexOf(attr) > 0) {
      //包含attr属性,替换attr
      var sub_reg = new RegExp(attr + '=[\'\"](\\w*%?)[\'\"]', 'gi');
      return match.replace(sub_reg, attr +'=' + val);
    }else{
      //不包含attr属性,添加attr
      return match.substr(0, tag.length + 1) + ' ' + attr + '=' + val + ' ' + match.substr(tag.length + 2, match.length);
    }
  });
}

以上这篇正则表达式替换html元素属性的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery之超简单的div显示和隐藏特效demo(分享)
Jul 09 Javascript
javascript获取web应用根目录的方法
Feb 12 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
Oct 12 Javascript
js实现密码强度检测【附示例】
Mar 30 Javascript
javascript创建含数字字母的随机字符串方法总结
Aug 01 Javascript
实现JavaScript高性能的数据存储
Dec 11 Javascript
jQuery判断邮箱格式对错实例代码讲解
Apr 12 jQuery
BootStrap Table 后台数据绑定、特殊列处理、排序功能
May 27 Javascript
jquery ajaxfileupload异步上传插件
Nov 21 jQuery
原生jQuery实现只显示年份下拉框
Dec 24 jQuery
关于对TypeScript泛型参数的默认值理解
Jul 15 Javascript
js初始化验证实例详解
Nov 26 #Javascript
浅谈js在html中的加载执行顺序,多个jquery ready执行顺序
Nov 26 #Javascript
JS匿名函数实例分析
Nov 26 #Javascript
利用Js的console对象,在控制台打印调式信息测试Js的实现
Nov 26 #Javascript
JS类的定义与使用方法深入探索
Nov 26 #Javascript
js控制台输出的方法(详解)
Nov 26 #Javascript
jQuery基于排序功能实现上移、下移的方法
Nov 26 #Javascript
You might like
Yii使用CLinkPager分页实例详解
2014/07/23 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
使用PHP如何实现高效安全的ftp服务器(一)
2015/12/20 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
2016/10/17 PHP
实例:尽可能写友好的Javascript代码
2006/10/09 Javascript
javascript引用对象的方法代码
2007/08/13 Javascript
在多个页面使用同一个HTML片段《续》
2011/03/04 Javascript
jQuery setTimeout()函数使用方法
2013/04/07 Javascript
Jquery选中或取消radio示例
2013/09/29 Javascript
js onload事件不起作用示例分析
2013/10/09 Javascript
jquery实现图片灯箱明暗的遮罩效果
2013/11/15 Javascript
BootstrapValidator不触发校验的实现代码
2016/09/28 Javascript
js 弹出虚拟键盘修改密码的简单实例
2016/10/10 Javascript
Vue.js实现简单动态数据处理
2017/02/13 Javascript
基于node.js依赖express解析post请求四种数据格式
2017/02/13 Javascript
如何使用Bootstrap创建表单
2017/03/29 Javascript
vue如何从接口请求数据
2017/06/22 Javascript
基于javascript 显式转换与隐式转换(详解)
2017/12/15 Javascript
Vue+Jwt+SpringBoot+Ldap完成登录认证的示例代码
2018/05/21 Javascript
如何通过setTimeout理解JS运行机制详解
2019/03/23 Javascript
D3.js的基础部分之数组的处理数组的排序和求值(v3版本)
2019/05/09 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
NodeJS开发人员常见五个错误理解
2020/10/14 NodeJs
[12:29]2018国际邀请赛 开幕秀
2018/08/22 DOTA
Python3中列表list合并的四种方法
2019/04/19 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
2020/06/04 Python
基于tensorflow for循环 while循环案例
2020/06/30 Python
python生成xml时规定dtd实例方法
2020/09/21 Python
详解基于python的全局与局部序列比对的实现(DNA)
2020/10/07 Python
HTML5中canvas中的beginPath()和closePath()的重要性
2018/08/24 HTML / CSS
奢华时尚的独特视角:La Garçonne
2018/06/07 全球购物
10条PHP编程习惯
2014/05/26 面试题
2014年检察院个人工作总结
2014/12/09 职场文书
入党转正申请书范文
2019/05/20 职场文书
会计专业自荐信范文
2019/05/22 职场文书