Javascript:需要注册表格帮助

时间:2014-01-03 17:43:04

标签: javascript html

我是一名新手脚本,而我正在尝试做的是:创建一个注册表和一个计算器。如果输入的密码少于5个符号或用户名少于3个符号,则无法继续。但即使我输入一个超过3个符号的用户名和一个超过5个符号的密码,它仍会显示错误信息。

代码:http://pastebin.com/KqYbDJMw

var user = document.forms[0].username.value;
var pw = document.forms[0].password.value;

function triggerCalc(){
    if (pw.length < 5 && user.length < 3){
        alert("An error occured");
    }
    else  {
        alert("Thank you for registering to my website.");
        var action = prompt("Welcome to my calculator. For addition press 1, for substraction press 2, for multiplication press 3, for division press 4 and for square root press 5:", "");

        var firstNum = new Array();
        var secondNum = new Array();
        var result = new Array();

3 个答案:

答案 0 :(得分:3)

如果这些条件的 为真,您希望失败,因此请使用||(或)代替&&(和)

if (pw.length < 5 && user.length < 3)

应该是

if (pw.length < 5 || user.length < 3)

此外,您每次进行检查时都希望获取当前,因此

var user = document.forms[0].username.value;
var pw = document.forms[0].password.value;

应该在内部你的功能。即

function triggerCalc(){
    var user = document.forms[0].username.value;
    var pw = document.forms[0].password.value;

答案 1 :(得分:1)

问题是你得到:

var user = document.forms[0].username.value;
var pw = document.forms[0].password.value;

function triggerCalc(){...

负载。所以它总是空白的。要在用户点击“继续...”时获取它,请将其移到函数内部,如下所示:

function triggerCalc(){
var user = document.forms[0].username.value;
var pw = document.forms[0].password.value;
...

答案 2 :(得分:0)

你离我太远了。两个主要的变化是您需要将变量赋值放在要调用的函数中,以便在按下提交按钮时获取值。 此外,您可能希望在验证字段时使用Or。这是一个例子:

function triggerCalc(){
        var user = document.forms[0].username.value;
        var pw = document.forms[0].password.value;

    if (pw.length < 5 || user.length < 3){
            alert("An error occured");
            }

如果您正在进行任何类型的验证,那么有一些很棒的jQuery库可以让它看起来很棒且易于实现。您可能想要快速谷歌搜索。