以下是一个简单的代码实现,用于校验在一个表单中嵌套的树型表格:

function validateNestedTable() {
  // 获取所有的table元素
  var tables = document.getElementsByTagName('table');

  // 遍历每个table元素
  for (var i = 0; i < tables.length; i++) {
    var table = tables[i];

    // 如果表格中有子表格,则递归校验子表格
    var nestedTables = table.getElementsByTagName('table');
    if (nestedTables.length > 0) {
      if (!validateNestedTable(nestedTables)) {
        return false;
      }
    }

    // 校验当前表格中的数据
    var rows = table.getElementsByTagName('tr');
    for (var j = 0; j < rows.length; j++) {
      var row = rows[j];
      var inputs = row.getElementsByTagName('input');
      for (var k = 0; k < inputs.length; k++) {
        var input = inputs[k];
        if (input.required && !input.value) {
          alert('请填写所有必填项!');
          return false;
        }
      }
    }
  }

  return true;
}

这段代码首先获取页面中所有的table元素,然后遍历每个table元素。如果表格中有子表格,则递归校验子表格。然后,对于每个表格,它会遍历每一行和每一个input元素,如果有必填项没有填写,则弹出提示信息并返回false。最后,如果所有表格都通过了校验,则返回true。

Element 表单嵌套树型表格校验问题 - 代码实现

原文地址: https://www.cveoy.top/t/topic/oPb2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录