我想学JS,所以我只写JS代码(只有在我的HTML代码中使用脚本的身体标记)。表单验证对表单没有影响,没有HTML,只有JS
我想在上面提到的条件,写一个登录表单,并验证它与验证功能。 由于某些原因,当我提交表单时(我相信它甚至没有调用验证函数,因为我在它的开始部分放了一个警报)没有任何反应。
我的代码:
function validateLogin() {
alert("CHECK");
var username = document.getElementById('username').value;
var pass = document.getElementById('pass').value;
if (username === "admin" && pass === "admin") {
return true;
} else {
alert("Wrong username or password!");
return false;
}
}
var loginDiv = document.createElement('div');
loginDiv.className = 'loginDiv';
var loginForm = document.createElement('form');
loginForm.className = 'loginForm';
loginForm.onsubmit = "return validateLogin()";
var username = document.createElement('input');
username.id = 'username';
var pass = document.createElement('input');
pass.id = 'pass';
pass.type = 'password';
var subm = document.createElement('input');
subm.type = 'submit';
loginForm.appendChild(document.createTextNode("Username:"));
loginForm.appendChild(username);
loginForm.appendChild(document.createElement('br'));
loginForm.appendChild(document.createTextNode("Password:"));
loginForm.appendChild(pass);
loginForm.appendChild(document.createElement('br'));
loginForm.appendChild(subm);
loginForm.action = "#";
loginForm.method = "post";
loginDiv.appendChild(loginForm);
document.body.appendChild(loginDiv);
编辑我发现改变 loginForm.onsubmit = “返回validateLogin()”; 分成
loginForm.onsubmit = validateLogin;
为我解决了它,出于某种原因。
感谢,但无论到您向我展示的好处,我甚至没有看到函数开始时的警报。是由于语法错误还是甚至没有进入函数? – Sharonica
我更新了代码以回答您的问题还可以查看JSlint.com,在这里你可以在线查看你的代码,当你更熟悉它时,可以在你自己的编辑器中使用它,这样你就不必复制/粘贴代码。 – Robert
感谢您的帮助! – Sharonica