Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP类函数中使用javascript?_Php_Javascript_Oop_Class - Fatal编程技术网

如何在PHP类函数中使用javascript?

如何在PHP类函数中使用javascript?,php,javascript,oop,class,Php,Javascript,Oop,Class,正如你们所看到的,我有一个名为table的类;我在上面有很多功能,“主界面”就是其中之一;这些功能就像我的界面,上面有一些复选框和组合框;我想在“所有”复选框->onclick=“” 我希望当用户单击“全部”复选框时,选项将在屏幕上消失,但我找不到执行此操作的方法。 有什么办法吗?我可以将JavaScript函数的调用添加到onclick吗 <script type="text/javascript" > function hide(){ if(documen

正如你们所看到的,我有一个名为table的类;我在上面有很多功能,“主界面”就是其中之一;这些功能就像我的界面,上面有一些复选框和组合框;我想在“所有”复选框
->onclick=“”

我希望当用户单击“全部”复选框时,选项将在屏幕上消失,但我找不到执行此操作的方法。
有什么办法吗?我可以将JavaScript函数的调用添加到onclick吗

<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'>;

}
?>

函数hide(){
if(document.form.All.checked){
document.getElementById('option').style.visibility=“hidden”;
}
}

您正在混合服务器端和客户端脚本语言。PHP运行服务器端(在web服务器上),javascript运行客户端(在web浏览器中)。Onclick是javascript,因此运行客户端。不能直接从Onclick操作调用PHP函数

要实现您想要的,您不需要任何PHP脚本。这一切都可以用Javascript完成。您需要向表单中添加一个ID,如下所示:

$arayuz.="<form name='form' id='myform' action='index.php' method='post'>";
$arayuz.=”;
然后将以下内容用作onclick操作:

$arayuz.="<input type=checkbox name=All value=All onclick='document.getElementById(\"myform\").style.visibility = \"hidden\";'>"
$arayuz.=“

这很管用,但是像那样打印出内嵌式JavaScript是很可怕的,我真的建议您研究不引人注目的JavaScript,并使用类似jQuery的东西。适用于所有复选框的Jquery示例:

$(“:checkbox”).live('click',函数(){
$(“#IdOfForm”).hide();
});

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)\">";
}

我希望这会有所帮助……

表单id在onclick中使用

  $arayuz.="<form name='form' id='form1' action='index.php' method='post'>";
$arayuz.=”;
这将是你的重头戏

  $arayuz.="<input type=checkbox name=All value=All onclick='document.getElementById(\"form1\").style.visibility = \"hidden\";'>"
$arayuz.=“

虽然这看起来像是的复制品,但事实并非如此,旧问题是在关闭后编辑的。是的,它是复制品。我的旧问题似乎非常混乱;现在,请澄清我的问题,并让commmnet变得易于理解Lamuretj:首先编写HTML和Javascript:这是浏览器看到的。然后,围绕它编写PHP:这是预处理的,可以帮助您自动生成HTML和Javascript;在这个阶段,不要触摸你的HTML或Javascript。现在看起来好多了
  $arayuz.="<input type=checkbox name=All value=All onclick='document.getElementById(\"form1\").style.visibility = \"hidden\";'>"