jquery 前端有比较方便的预览修改 word 并导出的插件吗,能打包内网使用的 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a Javascript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
Javascript 权威指南第 5 版
Closure: The Definitive Guide
liuzh365
V2EX    Javascript

jquery 前端有比较方便的预览修改 word 并导出的插件吗,能打包内网使用的

  •  
  •   liuzh365 2021-10-15 09:41:08 +08:00 via iPhone 2563 次点击
    这是一个创建于 1516 天前的主题,其中的信息可能已经有所发展或是发生改变。

    接到一个需求,大概描述是这样:有一些 word 文件模板,比如是个会议纪要模板,文件的格式是固定的,但每次开会的时间、地点和参会人员等不一样。用户在模板文件里需要替换的地方预先设置好占位符,类似${x}、${title},在系统上传文件模板。需要用到这些模板的时候,用户在前端选择模板文件,后端发送到前端,前端的插件识别模板,以预览的形式打开,有占位符的地方可以修改,其他部分不能修改。点击保存可以导出文件。

    以前实习的时候看到过类似的,不过时间过去很久不记得了。。

    7 条回复    2021-10-15 16:39:31 +08:00
    InternetExplorer
        1
    InternetExplorer  
       2021-10-15 09:44:43 +08:00
    让后端去替换 :doge:
    lower
        2
    lower  
       2021-10-15 09:52:36 +08:00
    前端搞的话,好像只能用那种 IE 时代的 ActiveX 控件,调本地的 office 工具
    1cming
        3
    1cming  
       2021-10-15 11:39:03 +08:00
    正好之前做过类似的系统
    前端 jquery+angular
    主要解析转换逻辑在后端
    大致流程如下:
    - 1.占位符约定,正则解析
    占位符分两类:
    一类是通用的比如 inuput 、checkbox ;
    一类是业务需要关注的,用于单独解析,目的是给 input 赋予 name,表单提交到 server 时方便处理;
    - 2.模板文件
    原始输入的模板文件类型为 doc/xls 类型;
    通过 apose+jsoup 将模板转换成 html 文本;
    编辑时 html 文本匹配正则替换成页面元素
    比如$输入;转换成<input>;
    - 3.录入内容替换
    提交 form 单独处理;
    使用 apose+正则 replace 成<input value='录入内容'>
    - 4.html 转换成 word/pdf
    liuzh365
        4
    liuzh365  
    OP
       2021-10-15 12:13:24 +08:00 via iPhone
    @1cming 谢谢,跟我想到 planb 一样,改成用表单的方式实现
    liuzh365
        5
    liuzh365  
    OP
       2021-10-15 14:33:51 +08:00 via iPhone
    @1cming 第 2 点我不太清楚:是在后端转成 html 文本,然后将 html 文本传到前端吗?
    liuzh365
        6
    liuzh365  
    OP
       2021-10-15 14:35:41 +08:00 via iPhone
    @1cming 第 3 点替换完之后,是 json 把信息传到后端,还是整个 html 文本传到后端呢?
    1cming
        7
    1cming  
       2021-10-15 16:39:31 +08:00
    @liuzh365
    是的,原始输入是 word 或者 excel 模板,上传到后台后,server 解析生成 html 展示到页面,业务可以直接在 html 上填数,填完后提交到 server,然后由 server 把 form 数据(仅传 form 数据,空 html server 可以自己存一份)跟空 html 做匹配填充。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1184 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 17:46 PVG 01:46 LAX 09:46 JFK 12:46
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86