Javascript选择php中的所有按钮

时间:2011-11-03 12:20:29

标签: php javascript

大家好我首先不知道Javascript,我从互联网上获得了这个脚本,但无法让它工作。如果有人可以请那么善良并帮助我。我正在尝试创建一个“全部检查”和对于我的复选框,在我的表单上“取消选中所有”按钮,如果我单击按钮它没有选择任何内容。我哪里错了?

<?php
session_start();
?>
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--

<!-- Begin
function CheckAll(chk)
{
for (i = 0; i < chk.length; i++)
chk[i].checked = true ;
}

function UnCheckAll(chk)
{
for (i = 0; i < chk.length; i++)
chk[i].checked = false ;
}
// End -->
</script>
</head>

然后是表格:

$sql0 = "SELECT * FROM .....
$result0 = mysql_query($sql0);
echo "<form name='myform' action='...' method='post'>";
while($row0 = mysql_fetch_assoc($result0)) {
   $test_id=$row0['id'];
   $test_name=$row0['test_name'];

echo "  <table width=600px>";
echo "      <tr>";
echo "          <td width=30px><input name='question[$test_id][]' type='checkbox' value='1' /></td>";
echo "          <td width=580px align=left>$test_name</td>";
echo "      </tr>";
echo "  </table>";
}
echo "</P>";
echo "<input type='button' name='Check_All' value='Check All' onClick='CheckAll(document.myform.check_list)'>";
echo "<input type='button' name='Un_CheckAll' value='Uncheck All' onClick='UnCheckAll(document.myform.check_list)'>";
echo "</form>";

3 个答案:

答案 0 :(得分:2)

如果您不了解javascript,我强烈建议您调查jquery - 一个可以消除跨浏览器问题并使大量JavaScript更容易的库。

只需包含以下内容:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>

和你的代码

<input type='button' name='Check_All' value='Check All' onClick='$(":checkbox").attr("checked",true);'>

未经测试,但应该没问题。

答案 1 :(得分:0)

改变这个:

<td width=30px><input name='question[$test_id][]' type='checkbox' value='1' /></td>";

到此:

<td width=30px><input name='check_list[]' type='checkbox' value='1' /></td>";

答案 2 :(得分:0)

我强烈建议您使用jQuery,它可以让您专注于逻辑,而不用担心您可能遇到的跨浏览器问题。

<script src='http://code.jquery.com/jquery-1.6.3.min.js' type='text/javascript'></script>
<script>
$(document).ready(function () {
   //check all
   $('input[name="Check_All"]').click(function () {
      //for all checkboxes where the name begins with "question", check them
      $('input[name^="question"]').attr('checked', true);
   });

   //uncheck all
   $('input[name="Un_CheckAll"]').click(function () {
      //for all checkboxes where the name begins with "question", uncheck them
      $('input[name^="question"]').attr('checked', false);
   });
});
</script>

这是故障......

选择页面上name属性设置为Check_all

的所有按钮
$('input[name="Check_All"]')

单击找到的项目时,执行传递的函数中的代码

$('input[name="Check_All"]').click(function () {
    //javascript code here
});

对于名称以“question”开头的所有复选框,请检查

$('input[name^="question"]').attr('checked', true);