表单验证出错(javascript)

时间:2013-05-14 10:03:17

标签: javascript validation

我有以下HTML代码:

<form name="Register" action="Register.aspx" method="post" runat="server" style="margin-top: 15px;" onsubmit="return validateProfile(FormName='Register');" >
  <p> Name* : <input id="FirstName" type="text" name="FirstName"/> </p>
<form>

这个JavaScript代码:

function isEmpty(field) {       
  if (field == "" || field == null)
    return false;
}

function validateProfile(FormName) {
    var errFname = "";
    var Fname = document.forms[FormName]["FirstName"].value;
    alert(isEmpty(field=Fname));
    return false;
}

这里的问题是验证不起作用......

我希望如果该字段为空,则会有一条警告消息。 解决方案可能非常简单,但我只是开始用javascript来验证这个验证。

我必须在代码中使用isEmpty函数。

3 个答案:

答案 0 :(得分:1)

变化

validateProfile(FormName='Register');

validateProfile('Register');

alert(isEmpty(field=Fname));

   alert(isEmpty(Fname));


function validateProfile(FormName) {
    var errFname = "";
    var Fname = document.forms[FormName]["FirstName"].value;
    return isEmpty(Fname);
}

答案 1 :(得分:1)

您应该使用以下代码:

function validateProfile(FormName) {
        var errFname = "";
        var Fname = document.getElementById("FirstName").value;
        alert(isEmpty(Fname));
        return false;
}

您可以使用您提供的文本字段的ID。 并使用代码更改表单标记:

<form name="Register" action="Register.aspx" method="post" runat="server" style="margin-top: 15px;" onsubmit="return validateProfile('Register');" >

答案 2 :(得分:0)

Javascript不允许按名称传递函数参数

alert(isEmpty(Fname)); // instead of isEmpty(field=Fname)