您無法通過CSS禁用。
你可以通過javascript來實現它(就像Dryden Long的答案)。禁用有問題的所有輸入的tr。
但是,這有問題在呈現時未被禁用。這意味着總會有一個輸入未被禁用的時刻。要提醒的是。
我不知道你如何創建這些輸入。但是,例如,如果它們是通過PHP生成的,則可以在循環中指定它。
即使你不這樣做,如果你可以在你的服務器上使用PHP,那可能會讓事情變得更容易。 這是因爲這樣做簡單:
<table>
<tr disabled="disabled">
<td><input name="i1" type="checkbox" .../></td>
<?php
for ($i=2;$i<$n;$i++)
echo '<td><input name="i'.$i.'" type="text" disabled="disabled" .../></td>';
?>
</tr>
</table>
如果你有不同的類型,你總是可以這樣做:
<table>
<tr disabled="disabled">
<?php
$arr = array("checkbox","text","text"...);
for ($i=0;$i<$n;$i++)
echo '<td><input name="i'.($i+1).'" type="'.$arr[$i].'" disabled="disabled" .../></td>';
?>
</tr>
</table>
如果你想避免相同的字符串,你可以創建一個第二個數組來存儲不同的可能值。像這樣:
<table>
<tr disabled="disabled">
<?php
$arr1 = array(0,1,1,1,0,1...);
$arr2 = array("checkbox","text");
for ($i=0;$i<$n;$i++)
echo '<td><input name="i'.($i+1).'" type="'.$arr2[$arr1[$i]].'" disabled="disabled" .../></td>';
?>
</tr>
</table>
來源
2014-02-27 22:33:07
Edu
我能想到的唯一方法就是使用Javascript。這對你來說是一種選擇嗎? –
我同意,在CSS中沒有「很好」的方法。我會使用JavaScript。 – Tim