我有以下代码来检查带有inputs
ids
和emailForm
的{{1}}是否为空白,但是当我通过离开测试表单时这不起作用空白。
nameForm
有人可以帮我吗,谢谢!
答案 0 :(得分:1)
您应该检查伪造的值,而不是专门检查null
。在某些情况下,空文本框的值将为空字符串。
替换此:
if (document.getElementById("emailForm").value == null || document.getElementById("nameForm").value == null) {
与此:
if (!document.getElementById("emailForm").value || !document.getElementById("nameForm").value) {
答案 1 :(得分:1)
您不应检查字段是否为null
,而应检查它们的内容是否为空字符串(带有.value == ''
)。
这可以在以下方法中看到:
function setInfo() {
if (document.getElementById("emailForm").value == '' ||
document.getElementById("nameForm").value == '') {
console.log("Please fill in all sections");
} else {
email = document.getElementById("emailForm").value;
name = document.getElementById("nameForm").value;
//loaded();
console.log("All sections filled in");
}
}
const button = document.getElementById('go');
button.addEventListener('click', function() {
setInfo();
});
<input id="emailForm" />
<input id="nameForm" />
<button id="go">Go</button>
答案 2 :(得分:0)
确保您调用函数setInfo()
function setInfo() {
// You can check Value.Length also or
if (document.getElementById("emailForm").value === "" ||
document.getElementById("nameForm").value === "") {
alert("Please Fill in all sections");
} else {
email = document.getElementById("emailForm").value;
name = document.getElementById("nameForm").value;
loaded();
}
}
答案 3 :(得分:0)
尝试以下解决方案:
function setInfo() {
var email=document.getElementById("emailForm").value;
var name=document.getElementById("nameForm").value;
if (email=='' || email==null || name=='' || name== null ) { // OR if (!email || !name)
alert("Please Fill in all sections");
return;
} else {
loaded();
}
}
答案 4 :(得分:0)
您应该检查字符串是否为空而不是null。尝试使用以下代码:
function setInfo() {
var a=document.getElementById("emailForm").value;
var b=document.getElementById("nameForm").value;
if (a == "" ||
b == "") {
alert("Please Fill in all sections");
} else {
email =
document.getElementById("emailForm").value;
name =
document.getElementById("nameForm").value;
alert("success alert");
}
}