Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.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 id选择器在php中不起作用_Javascript_Php_Html - Fatal编程技术网

Javascript id选择器在php中不起作用

Javascript id选择器在php中不起作用,javascript,php,html,Javascript,Php,Html,我的javascript不会响应php代码中的id标记: else { echo '<form = "nav-login" method="post" onsubmit="return noEmptyUserFields();" action="includes/login.inc.php"> <input type="text" id="uidz" name="uid" place

我的javascript不会响应php代码中的id标记:

    else {
                    echo '<form = "nav-login" method="post" onsubmit="return noEmptyUserFields();" action="includes/login.inc.php">
                        <input type="text" id="uidz" name="uid" placeholder="Username/e-mail">
                        <input type="password" id="pwdz" name="pwd" placeholder="password">
                        <button type="submit" name="submit">Login</button>
                    </form>
                    <a href="signup.php">Sign up</a>';
                }
else{
回声'
登录
';
}
但它响应我的javascript,它位于php之外,如下所示:

        <form class="signup-form" method="post" onsubmit="return noEmptyUserFields();" action="includes/signup.inc.php">
        <input type="text" id="first" name="first" placeholder="Firstname">
        <input type="text" id="last" name="last" placeholder="Lastname" >
        <input type="email" id="email" name="email" placeholder="E-mail" >
        <input type="text" id="uid" name="uid" placeholder="Username" >
        <input type="password" id="pwd" name="pwd" placeholder="Password" ></p2>
        <button type="submit" name="submit">Sign up</button></form>

注册
为什么它不会响应php中的id选择器

我已经包括了
两者都有

我的javascript如下所示(noEmptyLoginFields):

if(email.trim().length<1)
{
警报(“必须填写电子邮件”);
返回false;
}
否则如果(pwd.trim().长度<6)
{
警报(“密码必须至少包含6个字符”);
返回false;
}
else if(first.trim().长度<1)
{
警报(“必须填写姓名”);
返回false;
}
否则如果(最后一次修剪().长度<1)
{
警报(“必须填写姓氏”);
返回false;
}
else if(uid.trim().长度<1)
{
警报(“必须填写用户名”);
返回false;
}
否则返回true;
}
函数noEmptyLoginFields()
var uidz=document.getElementById('uidz').value;
var pwdz=document.getElementById('pwdz').value;
如果(uidz.trim().长度<1)
{
警报('必须填写用户名和密码!');
返回false;
}
否则如果(pwdz.trim().长度<1)
{
警报('必须填写用户名和密码!');
返回false;
}
}

两个表单验证似乎使用了相同的函数名,这导致了错误。我建议您使用事件处理程序纯粹在javascript中处理表单验证:

document.querySelector("#formId").addEventListener("submit", function() {
  // if(...) return false;
});

对不起,这是我的错误,代码不同。我想可能必须这样做,我需要在php中声明id:s,对吗?像这样的?document.getElementById('uidz')。值;
document.querySelector("#formId").addEventListener("submit", function() {
  // if(...) return false;
});