内容页面中的JavaScript验证

时间:2014-01-13 20:30:20

标签: javascript asp.net .net

这是我用于在contenet页面验证注册表单的部分代码。验证部分无效。任何帮助表示赞赏

母版页

 <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs"      Inherits="testjavascript.Site1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>

<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>    
<form id="form1" runat="server">
<div>
    <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
    HI
    </asp:ContentPlaceHolder>
</div>
</form>

Contenet页面:

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true"    CodeBehind="WebForm1.aspx.cs" Inherits="testjavascript.WebForm1" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<script type="text/javascript">
function Validations() {
    //-----------First name----------
    if (document.getElementById("txtFName").value == "")
    alert("plz enter first name");
     return false;
    }
  </script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<asp:TextBox ID="txtFName" runat="server"></asp:TextBox>
    <asp:TextBox ID="txtFnameValidate" runat="server"></asp:TextBox>
    <asp:Button ID="btnSubmit" Text="Submit" OnClientClick="return Validations();" runat="server"></asp:Button>
</asp:Content>

2 个答案:

答案 0 :(得分:0)

尝试使用:

document.getElementById("<%=txtFName.ClientID=>").value == ""

请参阅How do I print an ASP clientID in a web page?

答案 1 :(得分:0)

我认为你应该使用aspx验证器来简化代码。看看这个。

<asp:TextBox ID="txtFName" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator1" ControlToValidate="txtFName" Display="Static" ErrorMessage="*" runat="server"/> 

<asp:TextBox ID="txtFnameValidate" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator id="RequiredFieldValidator2" ControlToValidate="txtFnameValidate" Display="Static" ErrorMessage="*" runat="server"/>
  <asp:Button ID="btnSubmit" Text="Submit" OnClientClick="if(!Page_ClientValidate) return; DoSomething();" runat="server"></asp:Button> 

Page_ClientValidate函数内置于aspx(Web表单)并返回false,其中一个验证器无效。当然,上面的示例很简单,但您可以创建更复杂的场景。