如何实现一个系统来检查表单中输入的文本是否遵循一套规则?

时间:2017-09-04 14:58:56

标签: forms plugins web-applications

我正在寻找建议/指导,为我每天用作网站实施基于规则的表单验证系统。问题如下:

  1. 我们有一个由外部方提供的基于网络的系统(网站),用户(我公司的员工)在下订单之前会输入多个表单字段。
  2. 在该系统中,不同领域之间存在一些关系。例如,如果field A输入为cat,则field B必须为felinefelidae其他
  3. 目前,该网站允许用户在这些文本字段中输入任何内容。这意味着一些员工会犯错误,当我们想要组织和分析数据时会产生问题。
  4. 要求网站开发人员在他们的系统中实施这些规则几乎是不可能的(部分原因是他们的系统被其他客户使用 - 而不仅仅是我们的公司 - 部分是因为我们的规则正在定期改变)。这意味着我们需要在我们的(客户端/用户/浏览器)方面提出解决方案。
  5. 我甚至不确定从哪里开始(即我应该考虑哪种方法)来解决这个问题。实现一个浏览器扩展/插件,当用户点击提交时检查所有表单字段中的内容,解决问题?这甚至可能吗?提前感谢您的任何建议!

2 个答案:

答案 0 :(得分:2)

这是userscripts的一个很好的用例。以下内容可以帮助您入门:

(function() {
  const form = document.querySelector('form#someFormID');
  form.addEventListener('submit', e => {
    function abort(message) {
      e.preventDefault();
      alert(message);
    }
    // <input name="username"> is available as form.username
    if (form.someFieldName.value != 'cat') {
      abort(`${form.someFieldName.name} must be 'cat'!`);
    }
  })
})();

答案 1 :(得分:0)

您可以制作浏览器扩展程序,以检查用户点击的链接。如果是该网站的链接,您要在其上应用表单验证,那么它将验证表单。 为此,首先您需要知道他们基本上使用哪个浏览器。然后根据该浏览器,您可以进行扩展。

如果他们使用的是 Google Chrome ,则可以simple guide进行扩展。你可以从很少开始 samples  也。这是一个简单的guide,可以为 Mozilla Firefox 进行扩展。