【问题标题】:Set Value of input type in <td> through javascript通过javascript在<td>中设置输入类型的值
【发布时间】:2011-10-27 20:54:11
【问题描述】:

这是我在jsp中的spring表单代码。

<div id="mainDiv">
    <div id="itWillRepeat">
        <table>
            <tbody>
                   <tr>
                      <td>1</td>
                      <td>item</td>
                      <td>item</td>
                      <td>
                        <form:label path="list[${itemsRow.index}].number">4</form:label>
                        <form:hidden path="list[${itemsRow.index}].number" />
                      </td>
                   </tr>
            </tbody>
        </table>
    </div>
</div>

浏览器为第 4 个&lt;td&gt; 标签呈现并生成 HTML 代码为:

<label for="list4.seq">4</label>
<input type="hidden" value="4" name="list[4].seq" id="list4.seq">

它在浏览器中显示为:

1  item  item  4

我想通过简单的 JavaScript 在 onClick 等任何事件上更改 &lt;form:label&lt;form:hidden 的值。我在这里只提到了一个 ID 为 itWillRepeat 的 div。可以有许多 id 为 itWillRepeat 的 div,因为它会进入循环,我想按升序更改所有 &lt;form:label 的值。

【问题讨论】:

  • 一个 Id 在 xhtml 中必须是唯一的。在 id 中添加索引,例如 id="itWillRepeat-${intemsRow.index}",现在您可以创建一个函数来与该行的值交互。
  • "id 为 itWillRepeat 的 div 可能有很多" - 这将是无效的。将id 改为class
  • 为什么要为隐藏字段设置&lt;label&gt;
  • 是的,您应该为每个 id1、id2、...、idn 使用类或唯一 ID。
  • 好的。我会使用类。实际上,该 div 没有 id,class。我写只是为了理解。

标签: javascript html forms spring jsp


【解决方案1】:
button.onclick = function() {
    var rep = document.getElementById("mainDiv").getElementsByTagName('div');
       for (i = 0; i < rows.length; i++) {
            //get first label
            var label = rep.getElementsByTagName("label")[0]; 

             label.innerHTML = i+1;
             //get first input
             var hidn = rep.getElementsByTagName("input")[0];
              hidn.value = i+1;
         }
};

它将让所有标签/隐藏字段更改它们的值并对其进行排序。

【讨论】:

  • “itwillrepeat”选择器工作了吗?它应该区分大小写('itWillRepeat')
猜你喜欢
  • 2021-12-16
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多