2011-12-24 93 views
0

我怎麼可以把正確的方式複選框的名字,那麼它可以使用JavaScript多複選框,可以檢查所有和取消所有

<?php $i=1; ?> 

    <?php do { $i++; ?> 
     <tr> 
     <td><input name="<?php echo 'checkbox[$i]' ; ?> " type="checkbox" id="<?php echo $row_RsActivitynoteMem['id']; ?>" value="<?php echo $row_RsActivitynoteMem['id']; ?>" /> 
     <label for="checkbox"></label></td> 
     <td><?php echo $row_RsActivitynoteMem['Sname']; ?> <?php echo $row_RsActivitynoteMem['Ssurname']; ?></td> 
     <td width="20"><?php echo $row_RsActivitynoteMem['idactivity']; ?></td> 
     <td><?php echo $row_RsActivitynoteMem['kname']; ?></td> 
     <td>&nbsp;</td> 
     </tr> 
     <?php } while ($row_RsActivitynoteMem = mysql_fetch_assoc($RsActivitynoteMem)); ?> 
<tr> 
     <td>&nbsp;</td> 
     <td>&nbsp;</td> 
     <td width="20">&nbsp;</td> 
     <td>&nbsp;</td> 
     <td>&nbsp;</td> 
    </tr> 
    </table> 
    <input type="button" name="CheckAll" value="Check All" 
onClick="checkAll(document.form1.checkbox)"> 
<input type="button" name="UnCheckAll" value="Uncheck All" 
onClick="uncheckAll(document.form1.checkbox)"> 
<br> 

</form> 
</body> 
</html> 
<?php 
mysql_free_result($RsActivitynoteMem); 
?> 

運行如何讓CheckAll底部工作,管理檢查發送到另一個頁面時,變量框?

這個JavaScript的工作:

function checkAll(field) 
{ 
for (i = 0; i < field.length; i++) 
    field[i].checked = true ; 
} 

function uncheckAll(field) 
{ 
for (i = 0; i < field.length; i++) 
    field[i].checked = false ; 
} 
// End -- 
+0

如果上面的JavaScript爲你工作,請將它放在下面作爲答案並接受它。 – 2012-02-09 14:02:34

回答

6

你或許應該改變你的第5行代碼「名」 -attribute,因爲PHP不分析單引號中的變量。 應該

<?php echo "checkbox[$i]"; ?> 

甚至更​​好

<?php echo sprintf('checkbox[%s]', $i); ?> 

否則在你的HTML文件中的名稱其實會像<輸入名稱=「複選框[$ i]」類型=「複選框」 ... />

+1

+1 - 這個答案沒有什麼不妥。 – 2011-12-25 01:08:02