Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[已答复] 从WORD复制问题!!!

[复制链接]
楼主骗子 发表于 2010-1-7 17:24:12 | 显示全部楼层 |阅读模式
从WORD或者从网络上复制带表格的文章,会带大量的垃圾代码,而且表格还会变形
虽然编辑器有自带清除格式功能,但会把表格一起清除掉。

我改了编辑器 “清除格式” 的功能,可以过滤大部分的垃圾代码,还可以保留表格。

觉得有用可以看看:

打开images/edit.js
查找
  1. html = html.replace(/\<p>/gi,"[$p]");
  2.                         html = html.replace(/\<\/p>/gi,"[$\/p]");
  3.                         html = html.replace(/\<br[^>]*>/gi,"[$br]");
  4.                         html = html.replace(/\<[^>]*>/g,"");
  5.                         html = html.replace(/\[\$p\]/gi,"<p>");
  6.                         html = html.replace(/\[\$\/p\]/gi,"<\/p>");
  7.                         html = html.replace(/\[\$br\]/gi,"<br>");
  8.                         oRTE.document.body.innerHTML = html;
复制代码
用下面代码替换
  1.                         html = html.replace(/<script[^>]*?>(.|\n)*?<\/script>/gim,"");
  2.                         html = html.replace(/<(p |p>)/gi, "『〈$1");
  3.                         html = html.replace(/<(\/p)/gi,   "『〈$1");
  4.                         html = html.replace(/<(sup>)/gi, "『〈$1");
  5.                         html = html.replace(/<(\/sup)/gi, "『〈$1");
  6.                         html = html.replace(/<(sub)/gi,   "『〈$1");
  7.                         html = html.replace(/<(\/sub)/gi, "『〈$1");
  8.                         html = html.replace(/<(table)/gi, "『〈$1");
  9.                         html = html.replace(/<(\/table)/gi, "『〈$1");
  10.                         html = html.replace(/<(tr |tr>)/gi, "『〈$1");
  11.                         html = html.replace(/<(\/tr)/gi, "『〈$1");
  12.                         html = html.replace(/<(td |td>)/gi, "『〈$1");
  13.                         html = html.replace(/<(\/td)/gi, "『〈$1");
  14.                         html = html.replace(/<(img )/gi, "『〈$1");
  15.                         html = html.replace(/<(br)/gi,   "『〈$1");
  16.                         html = html.replace(/(『〈[^>]*)>/gi,"$1〉』");
  17.                         html = html.replace(/<[^>]*>/gi,"");   
  18.                         html = html.replace(/\&nbsp;/gi," ");  
  19.                         html = html.replace(/『〈/gi,"<");   
  20.                         html = html.replace(/〉』/gi,">");
  21.                         html = html.replace(/(<table)[^>]*(>)/gi,"$1 border="1" cellpadding="1" cellspacing="1" style="border-collapse: collapse" bordercolor="#333333" width="100\%"$2");
  22.                         html = html.replace(/(<[^>]*)colspan(=[^\s>]*)/gi,"$1 『col$2』");
  23.                         html = html.replace(/(<[^>]*)rowspan(=[^\s>]*)/gi,"$1 『row$2』");
  24.                         html = html.replace(/(<tr)[^>]*(>)/gi,"$1$2");  
  25.                         html = html.replace(/(<td)[^>『]*(>)/gi,"$1$2");  
  26.                         html = html.replace(/(<td)[^>『]*『/gi,"$1『");  
  27.                         html = html.replace(/(<[^>』]*』)[^>]*(『[^>『]*>)/gi,"$1$2");
  28.                         html = html.replace(/(』)[^>』]*(>)/gi,"$1$2");  
  29.                         html = html.replace(/<p[^>]*>/gi,"<p>");   
  30.                         html = html.replace(/『(col)(=\d{1,4})』/gi," $1"+"span"+"$2");
  31.                         html = html.replace(/『(row)(=\d{1,4})』/gi," $1"+"span"+"$2");
  32.                         html = html.replace(/(<img)[^>]*(>)/gi,"$1 src="""+"$2");
复制代码

评分

1

查看全部评分

lidq.jingwu 发表于 2010-1-7 18:26:17 | 显示全部楼层
回复 1# 楼主骗子
  1.                         html=html.replace(/<([a-zA-Z\/]*?)\s.*?>/gi,"<$1>");
  2.                         html=html.replace(/<(\/?p|(table)|(tr)|(th)|(td).*?)>/gi,"[$1]");
  3.                         html=html.replace(/(<.*?>)/gi,"");
  4.                         html=html.replace(/\[(\/?p|(table)|(tr)|(th)|(td).*?)\]/gi,"<$1>");
  5.                         html=html.replace(/<(table)>/gi,"<$1 border=1>");
复制代码
试试我的这几行代码,看效果怎么样
回复

使用道具 举报

 楼主| 楼主骗子 发表于 2010-1-8 09:23:39 | 显示全部楼层
回复 2# lidq.jingwu


    啊,你之前怎么不告诉我???

https://discuz.dismall.com/viewth ... 6030&highlight=
回复

使用道具 举报

lidq.jingwu 发表于 2010-1-8 09:24:46 | 显示全部楼层
回复 3# 楼主骗子


    这个过滤代码是我刚写出来的,之前也没有的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-18 10:34 , Processed in 0.024621 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表