js addDqmForPP给标签内属性值加上双引号的函数

 更新时间:2016年12月24日 00:15:15   作者:dh20156  
这篇文章主要介绍了js addDqmForPP给标签内属性值加上双引号的函数,需要的朋友可以参考下

实现代码一:

给标签内属性值加上双引号

var addDqmForPP = function(shtml){
  return shtml.replace(/( [^\=]*\=)(\s?[^\"\s\>]*)/ig,function(a,b,c,d,e){return (c)?(new RegExp("<[^>]*"+c.replace(/(\^|\(|\)|\[|\]|\{|\}|\?|\-|\\|\/|\||\$)/g,'\\$1')+"[^>]*>","i").test(e))?b+'"'+c+'"':b+c:b});
};

完整测试代码

<textarea id="t" style="height:200px; width:300px;">
<UL class=list>
<LI class=feed_item><SPAN class=note>01/12/2008</SPAN>
<P><A title=GE公司推出“汪力和李邦”网络广告 href=http://www.genewscenter.com/{$content}\Detail.asp?ReleaseID=4886&amp;NewsAreaID=2&amp;changeCurrentLocale=5 _eventID="4">GE公司推出“汪力和李邦”网络广告</A></P></LI>
<LI class=feed_item><SPAN class=note>26/11/2008</SPAN>
<P><A title=GE石油天然气集团在中国创造新的快速安装记录 href="http://www.genewscenter.com/content/Detail.asp?ReleaseID=4879&amp;NewsAreaID=2&amp;changeCurrentLocale=5" _eventID="5">GE石油天然气集团在中国创造新的快速安装记录</A></P></LI></UL>
</textarea>

<script type="text/javascript">
var sa = '<a href=index.html>hello </a><input onlick=a(); typle="submit"/><input onlick=a(); value=ok typle="submit"/><span>a=8+4</span>';
var sb = document.getElementById('t').value;
var addDqmForPP = function(shtml){
  return shtml.replace(/( [^\=]*\=)(\s?[^\"\s\>]*)/ig,function(a,b,c,d,e){return (c)?(new RegExp("<[^>]*"+c.replace(/(\^|\(|\)|\[|\]|\{|\}|\?|\-|\\|\/|\||\$)/g,'\\$1')+"[^>]*>","i").test(e))?b+'"'+c+'"':b+c:b});
};
alert(addDqmForPP(sa));
alert(addDqmForPP(sb));
</script>

实现代码二:

给标签内属性值加上双引号标记变小写

核心代码

var partialXHTML = function (value) {
  return value.replace(/<(\/?[a-zA-Z]+\s*)((?:"[^"]*"|'[^']*'|(?!'|"|\/?>).)*)(\/?>)/g, function (l, $1, $2, $3) {
    return '<' + $1.toLowerCase() + $2.replace(/([^=]+)=(?:(")[^"]*"|(')[^']*'|((?:(?!\s|'|"|\/?>).)*))/g, function (l, $1, $2, $3, $4) {
      return ($2||$3) ? l : $1 + '="' + $4 + '"';
    }) + $3;
  });
};

完整代码

<textarea style="height:200px; width:300px;">
<UL class=list>
<LI class=feed_item><SPAN class=note>01/12/2008</SPAN>
<P><A title=GE公司推出“汪力和李邦”网络广告 href="http://www.genewscenter.com/content/Detail.asp?ReleaseID=4886&amp;NewsAreaID=2&amp;changeCurrentLocale=5" _eventID="4">GE公司推出“汪力和李邦”网络广告</A></P></LI>
<LI class=feed_item><SPAN class=note>26/11/2008</SPAN>
<P><A title=GE石油天然气集团在中国创造新的快速安装记录 href="http://www.genewscenter.com/content/Detail.asp?ReleaseID=4879&amp;NewsAreaID=2&amp;changeCurrentLocale=5" _eventID="5">GE石油天然气集团在中国创造新的快速安装记录</A></P></LI></UL>
</textarea>
<script type="text/javascript">
var partialXHTML = function (value) {
  return value.replace(/<(\/?[a-zA-Z]+\s*)((?:"[^"]*"|'[^']*'|(?!'|"|\/?>).)*)(\/?>)/g, function (l, $1, $2, $3) {
    return '<' + $1.toLowerCase() + $2.replace(/([^=]+)=(?:(")[^"]*"|(')[^']*'|((?:(?!\s|'|"|\/?>).)*))/g, function (l, $1, $2, $3, $4) {
      return ($2||$3) ? l : $1 + '="' + $4 + '"';
    }) + $3;
  });
};
var parse = function (t) {
  t.value = partialXHTML(t.value);
};
</script>
<input type="button" value="修正" onclick="parse(document.getElementsByTagName('textarea')[0])" />

相关文章

  • JS上传组件FileUpload自定义模板的使用方法

    JS上传组件FileUpload自定义模板的使用方法

    这篇文章主要为大家详细介绍了JS上传组件FileUpload自定义模板的使用方法,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • 浅谈JavaScript 中的延迟加载属性模式

    浅谈JavaScript 中的延迟加载属性模式

    改善性能的最好方法之一是避免重复两次相同的工作。因此,只要可以缓存结果供以后使用,就可以加快程序的速度。延迟加载属性模式技术使任何属性都可以成为缓存层以提高性能。这里说到的延迟加载属性模式就是利用的访问器属性,将计算昂贵的操作推迟到需要时再使用
    2021-06-06
  • JavaScript兼容性总结之获取非行间样式案例

    JavaScript兼容性总结之获取非行间样式案例

    这篇文章主要介绍了JavaScript兼容性总结之获取非行间样式的相关资料,需要的朋友可以参考下
    2016-08-08
  • JavaScript获得url查询参数的方法

    JavaScript获得url查询参数的方法

    这篇文章主要介绍了JavaScript获得url查询参数的方法,可实现针对URL中参数分析的功能,需要的朋友可以参考下
    2015-07-07
  • json实现添加、遍历与删除属性的方法

    json实现添加、遍历与删除属性的方法

    这篇文章主要介绍了json实现添加、遍历与删除属性的方法,结合简单实例形式分析了json常见的添加、遍历与删除操作相关技巧,需要的朋友可以参考下
    2016-06-06
  • JavaScript中yield实用简洁实现方式

    JavaScript中yield实用简洁实现方式

    原以为是一个蛮复杂的题目,想了许久没思路,当然要实现绝对能实现,但如果分析JavaScript脚本或是动态产生代码,都太复杂了。
    2010-06-06
  • myFocus slide3D v1.1.0 使用方法与下载

    myFocus slide3D v1.1.0 使用方法与下载

    myFocus slide3D v1.1.0 使用方法与下载,需要的朋友可以参考下。
    2011-01-01
  • Javascript 学习书 推荐

    Javascript 学习书 推荐

    前一段时间看了一本javascript的书,书名为Javascript DOM 高级程序设计 由【加】Jeffrey Sambells和【美】
    2009-06-06
  • 详解JavaScript中数组的一些特殊用法

    详解JavaScript中数组的一些特殊用法

    数组是几乎所有编程语言的基础语法,本文将不会介绍数组的基础语法和用法,而是从JavaScript中数组的一些特殊之处入手,通过这些少有特性的详细介绍,加深我们对数组的理解
    2023-02-02
  • JS点击动态添加标签、删除指定标签的代码

    JS点击动态添加标签、删除指定标签的代码

    这篇文章主要介绍了JS点击动态添加标签、删除指定标签的代码,在文中给大家补充介绍了js 更加轮播图图片张数动态生成小圆点的方法,需要的朋友参考下实现代码
    2018-04-04

最新评论