如何在jQuery中启用所有禁用行

时间:2017-03-31 09:39:16

标签: javascript jquery jsp

我是jQuery的新手,我迷惑了如何启用我禁用的所有行。我能够禁用它,但我不知道如何再次启用所有行。我这里有一个代码,但是最初所有行都被禁用了。但是,当我尝试单击负责启用所有禁用行的tr时,没有任何反应。

HTML

<tr class ="${fn:substring(monthInfo.month, 0, 3)}">
    <c:if test="${stat.first}">
        <td class="monthName" rowspan="6" value = "${fn:substring(monthInfo.month, 0, 3)}">
         <div class="vertical-text">
           ${fn:substring(monthInfo.month, 0, 3)}
          </div>
         </td>
       </c:if>
       <td><img class="editButt" src="resources/images/edit.png" href="#"/></td>
       <td>${weekInfo.weekStart}</td>
       <td>${weekInfo.weekEnd}</td>
       <c:forEach items="${weekInfo.weeklyData}" var="week" >
            <td><input type="text" name="cell" class="hours" maxlength="2" value="${week}"></td>
        </c:forEach>
        <td class="weekTotal ibm-bgcolor-green-10 ">${weekInfo.totalHrs}</td>
        <td class="holidayTotal">${weekInfo.totalHo}</td>
        <td class="vacationTotal">${weekInfo.totalVl}</td>
        <td class="sickTotal">${weekInfo.totalSl}</td>
        <td><input type="text" name="cell" class="remarks" value="${weekInfo.remarks}"></td>
      </tr>

的jQuery

function disableRows(){
    $("#test1table tbody tr").each(function() {
        $(this).find('input:text').prop('disabled', true);
    });
}

$(document).ready(function() {
  calculateTargetHours();
  calculateActualHours();
  calculateUtilization();
  disableRows();
  $(".hours").blur(function() {
    checkValidInput($(this));
    calculateActualHours();
  });
  $('.editButt').click(function(){
      disableRows();
      $(this).closest('tr').find('input:text').prop('disabled', false);
  });
  $('.monthName').click(function(){
     disableRows();
     var className = $(this).closest('tr').find('td:first').text();
     alert(className);
     $('.'+className).find('input:text').prop('disabled', false);
    });
  }); 

2 个答案:

答案 0 :(得分:0)

我刚刚将.trim添加到.text()之后,以便所有不必要的字符

答案 1 :(得分:0)

https://jsfiddle.net/sudarpochong/9Lj2k3fc/

  

当我尝试单击负责启用所有禁用行的tr时,没有任何反应。

启用所有按钮

$(".monthName, thead tr, #enable-all").click(function(e) {
  $("table").removeClass("disabled");
  $("tbody tr").removeClass("danger");
  $("table input, table button").prop("disabled", false);
});