如您所见,我有一个名为table的类;我在上面有很多功能,"主面"就是其中之一;这些功能就像我的界面上有一些复选框和组合框;我想在"全部"复选框-> onclick=" "
上写一些JavaScript
我希望当用户点击"全部"复选框时,选项会在屏幕上消失,但我找不到方法。
有什么办法吗?我可以添加对onclick的JavaScript函数调用吗?
<script type="text/javascript" >
function hide(){
if(document.form.All.checked){
document.getElementById('option').style.visibility="hidden";
}
}
</script>
</head>
<body>
<?php
class table{
public function __construct() {
echo table:: mainface();
}
public function mainface()
{
$arayuz=" ";
$arayuz.="<form name=form action=index.php method=post>";
$arayuz.="<fieldset>";
$arayuz.="<input type=checkbox name=All value=All onclick='SOME JAVA SCRIPT FUNCTION'>;
}
?>
php文件:
public function mainface()
{
$output = "<script type='"text/javascript'" src='"/path_to_your_js/table.js'">-</script>";
$output.= "<form name ='"form'" action='"index.php'" method='"POST'">";
$output.= "<fieldset>";
$output.= "<input type='"checkbox'" name='"ALL'" value='"ALL'" onclick='"checkAll(this)'">";
}
然后在表.js:中
function checkAll( myCheckBox )
{
//do some stuff you need here
myCheckBox.style.display = "none";
}
我希望这能帮助。。。
您正在混合服务器端和客户端脚本语言。PHP运行服务器端(在web服务器上),javascript运行客户端(在web浏览器内)。Onclick是javascript,因此运行客户端。您不能直接从Onclick操作调用PHP函数。
http://en.wikipedia.org/wiki/Client-side_scripting
http://en.wikipedia.org/wiki/Server-side
为了实现您想要的,您不需要任何PHP脚本。这一切都可以用Javascript完成。你需要在你的表格中添加一个ID,如下所示:
$arayuz.="<form name='form' id='myform' action='index.php' method='post'>";
然后使用以下内容作为onclick操作:
$arayuz.="<input type=checkbox name=All value=All onclick='document.getElementById('"myform'").style.visibility = '"hidden'";'>"
这是可行的,但打印出这样的内联JavaScript是可怕的,我真的建议你研究一下不引人注目的JavaScript,并使用类似jQuery的东西。适用于所有复选框的Jquery示例:
$(":checkbox").live('click' , function () {
$("#IdOfForm").hide();
});
表单id用于onclick
$arayuz.="<form name='form' id='form1' action='index.php' method='post'>";
这将是你的一次性
$arayuz.="<input type=checkbox name=All value=All onclick='document.getElementById('"form1'").style.visibility = '"hidden'";'>"