找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 1233|回复: 30

帖子的代码块编辑修改后,代码会被吞掉很多

[复制链接]
发表于 2026-10-28 09:03:49 | 显示全部楼层 |阅读模式

昨天发现:
帖子编辑,正常内容不会变;但代码修改后保存发现会被吃掉不少。

之前是不会的。
发表于 2026-10-28 09:34:09 | 显示全部楼层
帖子没试过重新编辑代码不了解。
回复

使用道具 举报

发表于 2026-10-28 09:52:13 | 显示全部楼层
期待修复
回复

使用道具 举报

发表于 2026-10-28 11:07:40 | 显示全部楼层
我也发现了,好像是最近才出现的
回复

使用道具 举报

发表于 2026-10-28 11:42:17 | 显示全部楼层
有可能是bug
回复

使用道具 举报

发表于 2026-10-28 13:37:24 | 显示全部楼层
在代码模式和所见即所得模式之间切换一下应该就好了...


二○二六年十月二十八日

点评

好像不行,会出现尖括号  发表于 2026-10-28 21:50
回复

使用道具 举报

发表于 2026-10-28 14:27:55 | 显示全部楼层
早就发现了,代码标签有问题,经常要重复编辑几次(所见即所得模式正常,但一发布就乱了、被吞了部分)。

点评

很久没发贴子了。这几天才碰到  发表于 2026-10-28 21:51
回复

使用道具 举报

发表于 2026-10-28 21:05:19 来自手机 | 显示全部楼层
Bug被你找到了
回复

使用道具 举报

发表于 2026-10-29 06:31:28 | 显示全部楼层
没有碰到

评分

参与人数 1无忧币 +5 收起 理由
yyz2191958 + 5

查看全部评分

回复

使用道具 举报

发表于 2026-10-29 20:26:32 | 显示全部楼层
我怎么不知道
回复

使用道具 举报

发表于 2026-11-7 08:47:39 | 显示全部楼层
路过、看看。。。
回复

使用道具 举报

发表于 2026-11-7 11:06:16 | 显示全部楼层
在11.1升级过一次论坛补丁,现在还会出现这个问题吗?

点评

代码还是有问题,会混入尖括号标签 https://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=454100&pid=6387104  详情 回复 发表于 2026-11-7 17:13
还未测试,下午有空看看。  详情 回复 发表于 2026-11-7 12:00
回复

使用道具 举报

 楼主| 发表于 2026-11-7 12:00:38 | 显示全部楼层
wuyou 发表于 2026-11-7 11:06
在11.1升级过一次论坛补丁,现在还会出现这个问题吗?

还未测试,下午有空看看。
回复

使用道具 举报

 楼主| 发表于 2026-11-7 17:13:43 | 显示全部楼层
wuyou 发表于 2026-11-7 11:06
在11.1升级过一次论坛补丁,现在还会出现这个问题吗?

代码还是有问题,会混入尖括号标签
https://bbs.wuyou.net/forum.php? ... 100&pid=6387104

点评

代码框中,你的尖括号要先清掉,不然肯定是不会帮你清除。  详情 回复 发表于 2026-11-7 18:35
回复

使用道具 举报

发表于 2026-11-7 17:36:58 | 显示全部楼层
cutebe 发表于 2026-11-7 17:13
代码还是有问题,会混入尖括号标签
https://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=4 ...测试了,没有问题啊!
  1. function 取消自动换行(){
  2.         console.clear();
  3.         let 当前表=ActiveSheet,选中区域=Selection;
  4.         //选中区域.WrapText=false;        //不自动换行

  5.         let 单元格地址对象=区域内单元格地址(当前表,选中区域);        //活动表,选中多区
  6.         for(let 格地址属性 in 单元格地址对象){
  7.                 if(单元格地址对象.hasOwnProperty(格地址属性)){
  8.                         let 单元格=当前表.Range(格地址属性);
  9.                         //取消水平两端对齐
  10.                         if(单元格.HorizontalAlignment==-4130){单元格.HorizontalAlignment=1;}
  11.                         单元格.WrapText=false;        //不自动换行
  12.                 }
  13.         }

  14.         选中区域.EntireRow.AutoFit();        //自适应行高
  15. }
复制代码
回复

使用道具 举报

发表于 2026-11-7 18:35:28 | 显示全部楼层
cutebe 发表于 2026-11-7 17:13
代码还是有问题,会混入尖括号标签
https://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=4 ...

代码框中,你的尖括号要先清掉,不然肯定是不会帮你清除。
回复

使用道具 举报

 楼主| 发表于 2026-11-7 18:54:43 | 显示全部楼层
本帖最后由 cutebe 于 2026-11-7 18:57 编辑

代码是正常的,我重启电脑看一下
还是会少掉:https://wuyou.net/forum.php?mod= ... 100&pid=6387240

点评

在重新编辑的code代码中,只要出现两个-以上的字符,在保存时,在其后面输入的字符也会一起消失。 你消失的代码,是否与-有关?  详情 回复 发表于 7 天前
你可以把代码放在txt文件中,发到 ,我来测试一下。  详情 回复 发表于 2026-11-7 23:45
回复

使用道具 举报

发表于 2026-11-7 23:45:48 | 显示全部楼层
cutebe 发表于 2026-11-7 18:54
代码是正常的,我重启电脑看一下
还是会少掉:https://wuyou.net/forum.php?mod=redirect&goto=findpost&pt ...

你可以把代码放在txt文件中,发到 184822951@qq.com ,我来测试一下。
估计是论坛程序本身的BUG引起的!


回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
cutebe 发表于 2026-11-7 18:54
代码是正常的,我重启电脑看一下
还是会少掉:https://wuyou.net/forum.php?mod=redirect&goto=findpost&pt ...

在重新编辑的code代码中,只要出现两个-以上的字符,在保存时,在其后面输入的字符也会一起消失。
你消失的代码,是否与-有关?

点评

没有连续的两个-- 正则表达式有两个分开的减号 let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,''); 邮件已发送。  详情 回复 发表于 7 天前
回复

使用道具 举报

 楼主| 发表于 7 天前 | 显示全部楼层
wuyou 发表于 2026-11-8 08:16
在重新编辑的code代码中,只要出现两个-以上的字符,在保存时,在其后面输入的字符也会一起消失。
你消失 ...

没有连续的两个--
正则表达式有两个分开的减号
let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,'');

邮件已发送。

点评

上面进行多次编辑,似乎很正常。  详情 回复 发表于 7 天前
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
测试一下编辑
  1. function 取消自动换行测试(){
  2.         console.clear();
  3.         let 当前表=ActiveSheet,选中区域=Selection;
  4.         //选中区域.WrapText=false;        //不自动换行
  5.         
  6.         let 单元格地址对象=区域内单元格地址(当前表,选中区域);        //活动表,选中多区
  7.         for(let 格地址属性 in 单元格地址对象){
  8.                 if(单元格地址对象.hasOwnProperty(格地址属性)){
  9.                         let 单元格=当前表.Range(格地址属性);
  10.                         //取消水平两端对齐
  11.                         if(单元格.HorizontalAlignment==-4130){单元格.HorizontalAlignment=1;}
  12.                         单元格.WrapText=false;        //不自动换行
  13.                 }
  14.         }
  15.         
  16.         选中区域.EntireRow.AutoFit();        //自适应行高
  17. }

  18. //提取表格选区内单元格地址,让可以逐个单元格操作
  19. //可多个小区块,重叠单元格只处理一次,整行/整列只处理在用区UsedRange内的
  20. function 区域内单元格地址(表,选区){        //返回单元格地址对象
  21.         let 在用区=表.UsedRange;
  22.         let 单元格对象={},计数=0;
  23.         
  24.         //遍历选区内所有小区块
  25.         console.log("选区地址:"+选区.Address() +"\t在用区:"+ 在用区.Address());
  26.         let 选区地址=选区.Address();
  27.         let 选区块组=选区地址.split(',');
  28.         for(let 块号=0;块号<选区块组.length;块号++){
  29.                 let 有效地址=选区块组[块号];        //console.log("块"+块号+":"+选区块组[块号]);
  30.                
  31.                 //处理整行、整列的区
  32.                 let 区块待判地址=选区块组[块号].replace(/[$]/g,'');
  33.                 let 区块在用=Intersect(在用区,表.Range(区块待判地址));
  34.                 let 区块无行地址=区块待判地址.replace(/[\d]/g,'');        //地址去除数字        //整两行$7:$8
  35.                 let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,'');        //地址去除字母        //整列$D:$D
  36.                 if(区块无行地址==':' || 区块无列地址==':'){
  37.                         if(区块在用){
  38.                                 有效地址=区块在用.Address();        //整行或整列的在用重叠部分
  39.                         }else{
  40.                                 if(区块无行地址==':'){        //整行跳过
  41.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整行不在用区跳过");
  42.                                         continue;
  43.                                 }
  44.                                 if(区块无列地址==':'){        //整列跳过
  45.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整列不在用区跳过");
  46.                                         continue;
  47.                                 }
  48.                         }
  49.                 }
  50.                
  51.                 //遍历区内每个单元格
  52.                 let 单块有效区=表.Range(有效地址);
  53.                 for(let 单元格 of 单块有效区.Cells){
  54.                         let 格地址=单元格.Address(0,0);
  55.                         if(typeof 单元格对象[格地址]=="undefined"){
  56.                                 单元格对象[格地址]=1;计数++;        //存单元格地址
  57.                         }else{单元格对象[格地址]++;}
  58.                 }
  59.                 console.log("块"+块号+":"+选区块组[块号] +"\t有效:"+有效地址 +"\t行列数:"+单块有效区.Rows.Count +","+ 单块有效区.Columns.Count);
  60.         }
  61.         console.log("单元格数量:"+ 计数);
  62.         return 单元格对象;
  63. }
复制代码


多次编辑,似乎没有问题!
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
cutebe 发表于 2026-11-8 08:36
没有连续的两个--
正则表达式有两个分开的减号
let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,''); ...

上面进行多次编辑,似乎很正常。
回复

使用道具 举报

 楼主| 发表于 7 天前 | 显示全部楼层

多次编辑测试

多次编辑测试:
  1. function 取消自动换行测试(){
  2.         console.clear();
  3.         let 当前表=ActiveSheet,选中区域=Selection;
  4.         //选中区域.WrapText=false;        //不自动换行
  5.        
  6.         let 单元格地址对象=区域内单元格地址(当前表,选中区域);        //活动表,选中多区
  7.         for(let 格地址属性 in 单元格地址对象){
  8.                 if(单元格地址对象.hasOwnProperty(格地址属性)){
  9.                         let 单元格=当前表.Range(格地址属性);
  10.                         //取消水平两端对齐
  11.                         if(单元格.HorizontalAlignment==-4130){单元格.HorizontalAlignment=1;}
  12.                         单元格.WrapText=false;        //不自动换行
  13.                 }
  14.         }
  15.        
  16.         选中区域.EntireRow.AutoFit();        //自适应行高
  17. }

  18. //提取表格选区内单元格地址,让可以逐个单元格操作
  19. //可多个小区块,重叠单元格只处理一次,整行/整列只处理在用区UsedRange内的
  20. function 区域内单元格地址(表,选区){        //返回单元格地址对象
  21.         let 在用区=表.UsedRange;
  22.         let 单元格对象={},计数=0;
  23.        
  24.         //遍历选区内所有小区块
  25.         console.log("选区地址:"+选区.Address() +"\t在用区:"+ 在用区.Address());
  26.         let 选区地址=选区.Address();
  27.         let 选区块组=选区地址.split(',');
  28.         for(let 块号=0;块号<选区块组.length;块号++){
  29.                 let 有效地址=选区块组[块号];        //console.log("块"+块号+":"+选区块组[块号]);
  30.                
  31.                 //处理整行、整列的区
  32.                 let 区块待判地址=选区块组[块号].replace(/[$]/g,'');
  33.                 let 区块在用=Intersect(在用区,表.Range(区块待判地址));
  34.                 let 区块无行地址=区块待判地址.replace(/[\d]/g,'');        //地址去除数字        //整两行$7:$8
  35.                 let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,'');        //地址去除字母        //整列$D:$D
  36.                 if(区块无行地址==':' || 区块无列地址==':'){
  37.                         if(区块在用){
  38.                                 有效地址=区块在用.Address();        //整行或整列的在用重叠部分
  39.                         }else{
  40.                                 if(区块无行地址==':'){        //整行跳过
  41.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整行不在用区跳过");
  42.                                         continue;
  43.                                 }
  44.                                 if(区块无列地址==':'){        //整列跳过
  45.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整列不在用区跳过");
  46.                                         continue;
  47.                                 }
  48.                         }
  49.                 }
  50.                
  51.                 //遍历区内每个单元格
  52.                 let 单块有效区=表.Range(有效地址);
  53.                 for(let 单元格 of 单块有效区.Cells){
  54.                         let 格地址=单元格.Address(0,0);
  55.                         if(typeof 单元格对象[格地址]=="undefined"){
  56.                                 单元格对象[格地址]=1;计数++;        //存单元格地址
  57.                         }else{单元格对象[格地址]++;}
  58.                 }
  59.                 console.log("块"+块号+":"+选区块组[块号] +"\t有效:"+有效地址 +"\t行列数:"+单块有效区.Rows.Count +","+ 单块有效区.Columns.Count);
  60.         }
  61.         console.log("单元格数量:"+ 计数);
  62.         return 单元格对象;
  63. }
复制代码

//这里的文字也会被吃。

出现一些现象:
一、重新编辑的贴子,增加代码后,保存浏览没有后面新增的。甚至还会吃掉code标签后面的普通文字。
二、重新编辑的贴子,增加代码后,点一下编辑框右上角□纯文本,增加的代码就没了。


点评

code 代码编辑,先切换到文本,再修改,不会出错。  详情 回复 发表于 7 天前
我编辑你这个帖子,在编辑状态下,切换到纯文本,删除现有的code代码,复制粘帖新代码,保存,正常。  详情 回复 发表于 7 天前
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
cutebe 发表于 2026-11-8 09:48
多次编辑测试:

//这里的文字也会被吃。

我编辑你这个帖子,在编辑状态下,切换到纯文本,删除现有的code代码,复制粘帖新代码,保存,正常。
回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
cutebe 发表于 2026-11-8 09:48
多次编辑测试:

//这里的文字也会被吃。

code 代码编辑,先切换到文本,再修改,不会出错。
a--z

点评

切到 文本状态 下编辑是可以的。谢谢!  发表于 7 天前
回复

使用道具 举报

 楼主| 发表于 7 天前 | 显示全部楼层

再试下

本帖最后由 cutebe 于 2026-11-8 12:51 编辑

纯文本状态下编辑正常

  1. function 取消自动换行测试(){
  2.         console.clear();
  3.         let 当前表=ActiveSheet,选中区域=Selection;
  4.         //选中区域.WrapText=false;        //不自动换行
  5.         
  6.         let 单元格地址对象=区域内单元格地址(当前表,选中区域);        //活动表,选中多区
  7.         for(let 格地址属性 in 单元格地址对象){
  8.                 if(单元格地址对象.hasOwnProperty(格地址属性)){
  9.                         let 单元格=当前表.Range(格地址属性);
  10.                         //取消水平两端对齐
  11.                         if(单元格.HorizontalAlignment==-4130){单元格.HorizontalAlignment=1;}
  12.                         单元格.WrapText=false;        //不自动换行
  13.                 }
  14.         }
  15.         
  16.         选中区域.EntireRow.AutoFit();        //自适应行高
  17. }

  18. //提取表格选区内单元格地址,让可以逐个单元格操作
  19. //可多个小区块,重叠单元格只处理一次,整行/整列只处理在用区UsedRange内的
  20. function 区域内单元格地址(表,选区){        //返回单元格地址对象
  21.         let 在用区=表.UsedRange;
  22.         let 单元格对象={},计数=0;
  23.         
  24.         //遍历选区内所有小区块
  25.         console.log("选区地址:"+选区.Address() +"\t在用区:"+ 在用区.Address());
  26.         let 选区地址=选区.Address();
  27.         let 选区块组=选区地址.split(',');
  28.         for(let 块号=0;块号<选区块组.length;块号++){
  29.                 let 有效地址=选区块组[块号];        //console.log("块"+块号+":"+选区块组[块号]);
  30.                
  31.                 //处理整行、整列的区
  32.                 let 区块待判地址=选区块组[块号].replace(/[$]/g,'');
  33.                 let 区块在用=Intersect(在用区,表.Range(区块待判地址));
  34.                 let 区块无行地址=区块待判地址.replace(/[\d]/g,'');        //地址去除数字        //整两行$7:$8
  35.                 let 区块无列地址=区块待判地址.replace(/[a-zA-Z]/g,'');        //地址去除字母        //整列$D:$D
  36.                 if(区块无行地址==':' || 区块无列地址==':'){
  37.                         if(区块在用){
  38.                                 有效地址=区块在用.Address();        //整行或整列的在用重叠部分
  39.                         }else{
  40.                                 if(区块无行地址==':'){        //整行跳过
  41.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整行不在用区跳过");
  42.                                         continue;
  43.                                 }
  44.                                 if(区块无列地址==':'){        //整列跳过
  45.                                         console.log("块"+块号+":"+选区块组[块号]+ "\t//整列不在用区跳过");
  46.                                         continue;
  47.                                 }
  48.                         }
  49.                 }
  50.                
  51.                 //遍历区内每个单元格
  52.                 let 单块有效区=表.Range(有效地址);
  53.                 for(let 单元格 of 单块有效区.Cells){
  54.                         let 格地址=单元格.Address(0,0);
  55.                         if(typeof 单元格对象[格地址]=="undefined"){
  56.                                 单元格对象[格地址]=1;计数++;        //存单元格地址
  57.                         }else{单元格对象[格地址]++;}
  58.                 }
  59.                 console.log("块"+块号+":"+选区块组[块号] +"\t有效:"+有效地址 +"\t行列数:"+单块有效区.Rows.Count +","+ 单块有效区.Columns.Count);
  60.         }
  61.         console.log("单元格数量:"+ 计数);
  62.         return 单元格对象;
  63. }
复制代码


回复

使用道具 举报

发表于 7 天前 | 显示全部楼层
谢谢分享
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-11-15 12:43

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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