我有一个HTML表的文本框列(里程),所有的人都被禁止在页面加载时,我需要的是,当用户点击一个复选框,该列的文本框应该启用,并成为必需字段,然后如果用户取消选中该复选框,则必须禁用该行上的文本框并删除所需的类.

当用户点击相应的复选框时,我已经具有启用和禁用文本框(列里程)的功能,但它是用javascript编写的.但是,由于某种原因它只能在IE中工作.
这是html代码
<tbody>
<c:forEach items="${list}" var="item">
<tr>
<td align="center">
<input type="checkbox" name="selectItems" value="<c:out value="${item.numberPlate}"/>" onchange="enableTextField(this)" />
</td>
<td align="left"><c:out value="${item.numberPlate}"/></td>
<td align="left"><c:out value="${item.driver.fullName}"/></td>
<td align="left"><input type="text" name="mileage_<c:out value="${item.numberPlate}"/>" value="" disabled="true"/></td>
</tr>
</c:forEach>
</tbody>
Run Code Online (Sandbox Code Playgroud)
和javascript代码:
function enableTextField(r)
{ var node = r.parentNode;
while( node && node.tagName !== 'TR' ) {
node = node.parentNode;
}
var i=node.rowIndex;
if(document.form1.selectItems[i-1].checked)
{
document.getElementById('mileage_' + document.form1.selectItems[i-1].value).disabled=false;
}
else
{
document.getElementById('mileage_' + document.form1.selectItems[i-1].value).value="";
document.getElementById('mileage_' + document.form1.selectItems[i-1].value).disabled=true;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我知道为了添加或删除动态验证规则,我必须使用:addClass('required'); o removeClass('required'),但我不知道如何检测是否选中了复选框,并基于此,启用或禁用该行的文本框.
我真的希望你能帮我解决这个问题.
我目前有一组看起来像这样的输入:
<li class="required">
<label>First Name</label>
<input type="text" name="cf_member_address[row_id_52][col_id_19]" value="">
</li>
<li class="required">
<label>Surname</label>
<input type="text" name="cf_member_address[row_id_52][col_id_20]" value="">
</li>
Run Code Online (Sandbox Code Playgroud)
我正在使用jQuery验证在提交之前验证表单.我正在尝试为每个项目添加自定义消息,但由于数组([row_id_52])我遇到了问题
此外,根据加载的形式,取决于行ID显示([row_id_52]) - 但Col ID保持不变.
我怎样才能宣布:
在我的JS文件中?我现在这样做:
cf_member_first_name: "Please enter your First Name",
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激!