2015-08-20 27 views
1

我有一個表格,它可以包含變量#行。我怎樣才能一次禁用所有複選框?使用Javascript來禁用變量行表格中的複選框

<table border="1" class="myTable grid"> 
    <tr align="center"> 
    <td>&nbsp;</td> 
    <td>A</td> 
    </tr> 
    <tr align="center"> 
    <td>1</td> 
    <td><input type="checkbox" name="cb1;1" value="1"></td> 
    </tr> 
    <td>2</td> 
    <td><input type="checkbox" name="cb2;1" value="1" checked></td> 
    </tr> 
    <tr align="center"> 
    </table> 
+1

如果你可以使用jQuery,'$( 'myTable的輸入[類型=複選框] ')。ATTR(' 禁用', '禁用')'會做的伎倆。 –

+0

@JohnBupit完美!謝謝! – Kaur

+0

請將您的問題標爲已解決。 – pyb

回答

1

下面是禁用myTable的所有複選框一個JavaScript的唯一解決方案。

document.getElementByClassName("myTable").querySelectorAll("input[type='checkbox']").disabled = true; 
+0

它是'document.getElementsByClassName()' –

1

甲jQuery的解決辦法是:

$('.myTable input[type=checkbox]').attr('disabled', 'disabled'); 

或者:

document.querySelectorAll('.myTable input[type=checkbox]').disabled = true; 
0

嘗試利用for循環來遍歷由document.querySelectorAll(selectors)返回NodeList,設置for語句內的每個[type=checkbox]元件disabled

var inputs = document.querySelectorAll("[type=checkbox]"); 
 
for (var i = 0; i < inputs.length; i++) { 
 
    inputs[i].disabled = true; 
 
}
<table border="1" class="myTable grid"> 
 
    <tbody> 
 
    <tr align="center"> 
 
     <td>&nbsp;</td> 
 
     <td>A</td> 
 
    </tr> 
 
    <tr align="center"> 
 
     <td>1</td> 
 
     <td> 
 
     <input type="checkbox" name="cb1;1" value="1"> 
 
     </td> 
 
    </tr> 
 
    <td>2</td> 
 
    <td> 
 
     <input type="checkbox" name="cb2;1" value="1" checked> 
 
    </td> 
 
    </tr> 
 
    <tr align="center"> 
 
    </tbody> 
 
</table>

+0

我有更多複選框的窗體與類型複選框;因此我只針對這些表格。感謝您的輸入。@ guest271314 – Kaur