MENU

[泛微ecode] 建模查询手机号字段必填查询检查拦截

• 2024 年 07 月 08 日 • 阅读: 902 • 泛微OA

效果:

image.png

ecodeSDK.overwritePropsFnQueueMapSet('WeaInput', {
  fn: (props) => {
    // 检查页面路径和placeholder条件
    if (!ecodeSDK.checkLPath('/spa/cube/index.html#/main/cube/search?customid=136') || props.placeholder !== "客户电话") return;

    // 针对 onBlur 和 onPressEnter 事件添加验证和处理
    ['onBlur', 'onPressEnter'].forEach(event => {
      if (typeof props[event] === 'function') {
        const originalEvent = props[event];
        props[event] = (e) => {
          if (!/^1[3-9]\d{9}$/.test(props.value)) {
            ModeForm.showMessage("电话号码格式错误,请输入有效的手机号码", 2, 10);
            return;
          }
          originalEvent(e); // 如果电话号码有效,调用原事件处理器
        };
      }
    });

    // console.log('Props updated for WeaInput with placeholder check:', props);
  },
});

无效方案

// // 是否第一次打开页面
// var isFirstopen = true;

// ecodeSDK.rewriteApiDataQueueSet({
//   fn: function fn(url, params, data) {
//     if (!ecodeSDK.checkLPath('/spa/cube/index.html#/main/cube/search?customid=136')) return;
//     if (url.indexOf("/api/ec/dev/table/datas") === -1) return;

//     // 获取客户电话
//     var topSearchDatas = ModeList.getTopSearchDatas();
//     var phoneNumber = topSearchDatas[11987]; // 假设电话号码的键为 11987

//     // 正则检查电话号码格式
//     var phoneRegex = /^1[3-9]\d{9}$/; // 以1开头,后跟10位数字
//     if (!phoneRegex.test(phoneNumber)) {
//       // 如果电话号码格式不正确,并且还没有显示过消息,则显示警告信息
//       if (isFirstopen) {
//         ModeForm.showMessage("电话号码格式错误,请输入有效的手机号码", 2, 10); // 错误信息,10秒后消失
//         isFirstopen = false; // 打开过页面
//       }
//       console.log(data);
//       data.datas = [];
//     }
//   },
//   desc: '客户管理客户检索手机号检查拦截'
// });

最后编辑于: 2024 年 07 月 10 日
返回文章列表 打赏
本页链接的二维码
打赏二维码