如何以正确的方式放置复选框的名称,然后可以使用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> </td>
</tr>
<?php } while ($row_RsActivitynoteMem = mysql_fetch_assoc($RsActivitynoteMem)); ?>
<tr>
<td> </td>
<td> </td>
<td width="20"> </td>
<td> </td>
<td> </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 :(得分:6)
您应该更改第5行代码“name”-attribute,因为PHP不会用单引号解析变量。 它应该是
<?php echo "checkbox[$i]"; ?>
甚至更好
<?php echo sprintf( 'checkbox[%s]', $i ); ?>
否则,HTML文件中的名称实际上就像&lt; input name =“checkbox [$ i]”type =“checkbox”... /&gt;