繁体   English   中英

如何在提交表单之前更改表单元素的ID?

[英]how to change id of form elements before form gets submitted?

我的表有很多行,每行都有选择列表。 像这样:

| USER    | MANAGER            | DEPARTMENT   |

| Rob     | [John Smith |V]    | [Sales |V]   | 

| Sue     | [Bob Jones |V]     | [Support |V] |

用户可以自由添加新行,行很多,列表的内容很复杂。

我给每个经理选择器ID为“ manager”,每个部门选择器ID为“ department”,从而大大简化了事情。

提交表单后,我编写了一些JavaScript来遍历每一行,找到每一行,然后更改ID“ manager_ [rownumber]”和“ department_ [rownumber]”。

然后我提交表格。 我的JavaScript代码如下。

基于带有警报弹出窗口的调试,id会按照我想要的方式进行更改,但是servlet仅收到一个“ manager”参数和一个“ department”行号。

为什么不提交所有输入(“ manager_1”,“ manager_2”等)? 更改ID之后,我需要做些什么以确保更改在提交表单之前生效吗?

谢谢!

这是我的代码:

function submitForm() {
  correctInputIDs();
  document.myform.submit();
}

function correctInputIDs() {
  var rows = document.getElementsByTagName("tr");
  for (var i=0; i<rows.length; i++) {
    var row = rows[i];
    selectElements = rows.getElementsByTagName("select");
    for (var j=0; j<selectElements.length; j++) {
      var selectElement = selectElements[j];
      if (selectElement.id == "manager") {
        selectElement.id = "manager_"+i;
      }
      if (selectedElement.id == "department") {
        selectElement.id = "department_"+i;
      }
    }
  }
}

因为ID与表单提交无关紧要,所以name s无关紧要。

快乐阅读

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM