Javascript 如果其中一个用户名或密码为空

Javascript 如果其中一个用户名或密码为空,javascript,jquery,Javascript,Jquery,如果是这样,我写了用户名,但没有密码,那么它应该会出现一个错误 问题是,只有当两个输入都是空的并且根本没有内容时,它才会显示 我想要的是,如果其中一个是空的用户名或密码 $(function () { var $login = $("#login"), $pwd = $("#pass"), $usr = $("#brugernavn"); $login.on("submit", function (event) { va

如果是这样,我写了用户名,但没有密码,那么它应该会出现一个错误

问题是,只有当两个输入都是空的并且根本没有内容时,它才会显示

我想要的是,如果其中一个是空的用户名或密码

$(function () {
     var $login = $("#login"),
         $pwd = $("#pass"),
         $usr = $("#brugernavn");

     $login.on("submit", function (event) {
         var msg = "Husk ",
             usr = ($usr.val().trim() !== ""),
             pwd = ($pwd.val().trim() !== "");

         msg += !usr ? "brugernavn" : "";
         msg += !usr && !pwd ? " og " : "";
         msg += !pwd ? "kodeord" : "";

         (pwd && usr) || alert(msg);

         return (pwd && usr);
     });
 });

您当前正在使用&&运算符,表示和

要使用| |运算符,表示或

(pwd || usr) || alert(msg);

这些疯狂的布尔速记是怎么回事?对如果过敏?我也会去掉逗号。在我看来,这会使它更容易阅读。逗号没有什么错。它只允许您使用var关键字一次,而不是在每个变量声明的开头。是的,我知道,但我更希望在每行上看到多个var。很容易一眼就能看出分配了三个本地变量。这对我来说是正确的:不,只有同时输入密码和用户名,验证才会成功。等等,什么?更改为| |意味着如果任一变量为真,则不会显示警报。说真的,我遗漏了什么?代码使用%%。