如何检查是否使用jquery检查复选框数组中的复选框

edd*_*ddy 8 html jquery

我有一个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'),但我不知道如何检测是否选中了复选框,并基于此,启用或禁用该行的文本框.

我真的希望你能帮我解决这个问题.

Bal*_*usC 3

将其放入<head>.js中包含的文件中<head>

$(document).ready(function() {
    $("input[name=selectItems]").change(function() {
        $(this).closest("tr").find("input[name^=mileage]").attr("disabled", !this.checked);
    });
});
Run Code Online (Sandbox Code Playgroud)

这是一个现场演示