我在输入结果方面遇到一些问题。我已经制作了一个按钮,该按钮调用了一个检查空输入字段的函数,但是当我单击它时,它会落在最后的if语句上,并显示出它不是空的。
我已经尝试制作空白数组,每个输入字段的函数以及具有所有输入变量的函数。他们都没有工作。
这是我正在尝试的:
function Bt() {
//Event Listeners
document.addEventListener("click", Bt);
chk();
}
function chk(n, e, p) {
var n = document.getElementById("Nome");
var e = document.getElementById("Email");
var p = document.getElementById("Pass");
var txt = ""
var B = [10];
[0] = ""
[1] = " "
[2] = " "
[3] = " "
[4] = " "
[5] = " "
[6] = " "
[7] = " "
[8] = " "
[9] = " "
[10] = " "
if (n.length == null || n.length == B) {
txt = "Escr
eva algo no nome"
document.getElementById("Info").innerHTML = txt;
} else txt = "A1";
document.getElementById("Info").innerHTML = txt;
if (e.length == null || n.length == B) {
txt = "Escreva algo no email"
document.getElementById("Info").innerHTML = txt;
} else txt = "A2";
document.getElementById("Info").innerHTML = txt;
if (p.length == null || n.length == B) {
txt = "escreva algo na senha"
document.getElementById("Info").innerHTML = txt;
} else txt = "A3";
document.getElementById("Info").innerHTML = txt;
}
这是我尝试过的:
function check(n, e, p) {
//Var and Gets
var n = document.getElementById("Nome");
var e = document.getElementById("Email");
var p = document.getElementById("Pass");
var txt = "";
//code
if (n, e, p < 1 || n, e, p == "" || n, e, p == null || n, e, p == " ") {
txt = "Estes campos: Nome, Email e Senha
são obrigatórios.
"
document.getElementById("Info").innerHTML = txt;
} else txt = "pronto";
document.getElementById("Info").innerHTML = txt;
}
答案 0 :(得分:0)
您的代码中有很多错误。首先,不调用function Bt()
。要正确使用addEventListener
,它应该在任何函数之外。像这样使用它:
document.addEventListener("click", Bt);
此外,如果调用chk()
是函数Bt
中的唯一代码,则可以在点击事件监听器中将Bt
替换为chk
。
document.addEventListener("click", chk);
下一个问题是您的chk(n, e, p)
函数。如果要在函数中声明变量,则无需填写函数的()
部分。因此,它应该看起来像这样:chk() {}
,其代码将在{}
内部执行。
您的if ()
遇到相同的重复问题。括号内的条件检查不正确。每个条件都必须单独检查。因此,实际上应该不是:(n, e, p < 1 || n, e, p == "" || n, e, p == null || n, e, p == " ")
:
(n < 1 && e < 1 && p < 1 || n == "" && e == "" && p == "" || n == null && e == null && p == null || n == " " && e == " " && p == " ")
请注意,我用&&
(“和”运算符)替换了逗号。它检查每个语句是否为真,如果至少一个语句为非真,则移至or运算符(||
)中的下一个语句块。
这些是我在您提供给我们的第二个代码段中发现的错误。可能还有更多。