Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.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
Javascript 尝试在PHP代码中调用js函数_Javascript_Php_Html_Forms - Fatal编程技术网

Javascript 尝试在PHP代码中调用js函数

Javascript 尝试在PHP代码中调用js函数,javascript,php,html,forms,Javascript,Php,Html,Forms,我正在运行一个PHP代码来验证登录表单,如果输入为空,它应该运行一个javscript函数,将一些div的display属性更改为block。 如果我把我的JS代码放在头标签之间,它会说 未捕获的TypeError:无法读取null的属性“style” ,如果我将代码放在/body标记之前,它会显示 未捕获引用错误:未定义formValidation Javascript代码: function formValidation() { document.getElementById("e

我正在运行一个PHP代码来验证登录表单,如果输入为空,它应该运行一个javscript函数,将一些div的display属性更改为block。 如果我把我的JS代码放在头标签之间,它会说

未捕获的TypeError:无法读取null的属性“style”

,如果我将代码放在/body标记之前,它会显示

未捕获引用错误:未定义formValidation

Javascript代码:

function formValidation() {
     document.getElementById("errMessage").style.display = "block",
    document.getElementById("arrow-errMessage").style.display = "block",
    document.getElementById("errEmail").style.display = "block",
    document.getElementById("arrow-errEmail").style.display = "block"; 
} 
PHP代码:

else {
          echo "<script> formValidation(); </script>";
    }
else{
回显“formValidation();”;
}

在执行
formValidation()
时,DOM元素尚未就绪。
您需要捕获页面加载事件,然后执行样式更改

document.addEventListener("load", formValidation);
尝试使用

window.onload=formValidation; 
当网页已完全加载所有内容时,将执行此操作。

您可以用于检查文档就绪事件


最好使用if-else语句在函数中验证表单,然后提醒用户该字段为空,然后关注该字段并添加css,而不是使用JavaScript在php中执行此操作。如果php和JavaScript是分开的,那么也很容易处理错误。如果您通过php运行验证,为什么不直接通过php设置这些样式。。。?我很怀疑这里有一个复制品。。。