You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maximo Anywhere移除Work Execution长描述HTML标签求助

解决Work Execution长描述字段HTML标签问题的方案

Hey,我来帮你搞定这个移除HTML标签的问题,一步步来:

一、先写好剥离HTML标签的核心函数

首先你需要一个靠谱的纯文本提取函数,用原生JS就能实现,不用依赖额外库,安全又高效:

function stripHtmlTags(htmlContent) {
  const tempElement = document.createElement('div');
  tempElement.innerHTML = htmlContent;
  // 兼容不同浏览器的文本获取方式
  return tempElement.textContent || tempElement.innerText || '';
}

这个函数的原理是借浏览器的DOM解析能力,把带HTML的内容塞进临时div,再提取纯文本,能处理绝大多数标签场景,包括嵌套标签。

二、找到可以添加脚本的位置/对应JS文件

针对Work Execution(大概率是Maximo模块),找脚本位置可以这么做:

  • 打开Work Execution应用,按F12调出浏览器开发者工具,切到Sources标签页
  • 在搜索框里搜和长描述相关的关键词,比如longdescription,或者先去Elements标签页找到字段的DOM元素,看它的id/name属性,再用这个属性值去Sources里搜关联的JS文件
  • 注入脚本的两种常用方式:
    • 正式环境:用Maximo的Application Designer,找到对应应用,添加自定义JS资源,然后在应用启动事件里调用剥离函数
    • 快速测试/临时生效:用浏览器的用户脚本工具(比如Tampermonkey),针对Work Execution的页面自动加载你的脚本,或者直接在浏览器控制台先测试效果

三、给字段绑定处理逻辑

找到长描述字段的DOM元素后,要在合适的时机触发标签剥离:

  • 示例代码(假设字段ID是longdescription):
// 页面加载完成后执行
document.addEventListener('DOMContentLoaded', function() {
  const descInput = document.getElementById('longdescription');
  if (descInput) {
    // 先清理现有内容里的HTML标签
    descInput.value = stripHtmlTags(descInput.value);
    // 监听输入事件,防止用户编辑时再次混入HTML
    descInput.addEventListener('input', function() {
      this.value = stripHtmlTags(this.value);
    });
  }
});
  • 如果是富文本编辑器(比如CKEditor),那得找到编辑器实例,用编辑器的API获取纯文本,比如:
// 假设编辑器实例是CKEditor.instances.longdescription
const editor = CKEditor.instances.longdescription;
if (editor) {
  const plainText = stripHtmlTags(editor.getData());
  editor.setData(plainText);
}

四、小提示

  • 不确定字段ID?右键点击长描述输入框→选择Inspect,在Elements面板里就能看到它的属性
  • 先在浏览器控制台测试stripHtmlTags函数:把字段里的HTML内容复制进去,看返回的是不是干净的纯文本,确认没问题再集成脚本

内容的提问来源于stack exchange,提问作者Cihan Ukan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:21:38