当前位置: 代码迷 >> PHP >> echo 出的input 不能调用onclick事件 求好手
  详细解决方案

echo 出的input 不能调用onclick事件 求好手

热度:311   发布时间:2016-04-28 21:04:46.0
echo 出的input 不能调用onclick事件 求高手
<SCRIPT language=JavaScript type=text/JavaScript>
function CheckAll(form) {
for (var i=0;i<form.elements.length;i++)    {
    var e = form.elements[i];
    if (e.name != 'chkall')       e.checked = form.chkall.checked; 
   }
}

</SCRIPT>
<?php 
require_once 'SqlHelper.class.php';
$SqlHelper=new SqlHelper();
$sql="select * from user1";
$res=$SqlHelper->execute_dql($sql);
$fields=mysql_num_fields($res);
$rows=mysql_num_rows($res);
echo "<table border=1><tr>";
echo "<th><input name='chkal' type='checkbox' id='chkall' value='select' onclick=CheckAll(this.form)></th>";
for($i=0;$i<$fields;$i++){
$fieldname=mysql_field_name($res,$i);
echo "<th>$fieldname</th>";
}
echo "</tr>";
$num=1;
while($row=mysql_fetch_row($res)){
echo "<tr>";
echo "<td><input type='checkbox' name='login' value='$num'></td>";
for($i=0;$i<$fields;$i++){
echo "<td>$row[$i]</td>";
}
echo "</tr>";
$num++;
}
echo "</table>";
?>

为什么 onclick=CheckAll(this.form) 调用js不管用呢

------解决方案--------------------
另外 echo "<td><input type='checkbox' name='login' value='$num'></td>"; 也不符合 php 的约定
------解决方案--------------------
这种问题其实最适合初学者上手来解决

首先你需要firefox浏览器和firebug插件

然后按F12开启这个插件刷新页面

然后"控制"这一栏里如果JS出错就会报错,哪里有问题之类

如果没报错,那就点一下你这个按钮 然后就会发现错误

比如我把你这个文件运行,点击那个input后出现



就是这个form未定义

版主一针见血

我们没这个能力 那firebug就会帮助我们  特别特别的有用 强烈推荐
  相关解决方案