我遇到了JavaScript验证问题。
我有以下源代码:
<%@ Page Title="" Language="C#" MasterPageFile="~/Full_Width.master" AutoEventWireup="true" CodeFile="validate.aspx.cs" Inherits="validate" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<script type="text/javascript">
function emptelephoneno() {
var elem = document.getElementById('<%=txtfullname.ClientID%>');
if (elem.value.length == 0) {
elem.style.border = '1px solid red';
document.getElementById('nameError').innerHTML = "Please Enter Your First Name";
return false;
}
else {
elem.style.border = '';
document.getElementById('nameError').innerHTML = "";
}
return true;
}
function emptelephoneno1() {
var elem1 = document.getElementById('<%=TextBox1.ClientID%>');
if (elem1.value.length == 0) {
elem1.style.border = '1px solid red';
document.getElementById('Span1').innerHTML = "Please Enter Your First Name";
return false;
}
else {
elem1.style.border = '';
document.getElementById('Span1').innerHTML = "";
}
return true;
}
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div class="wrapper row3">
<div id="container" class="clear">
<div id="content" style="border:1px solid green; margin-left:10px; width:600px;">
<div class="divRegistration">
<div class="divleft">
<label> full name :<span class="spanstar">*</span></label>
</div>
<div class="divright">
<asp:TextBox ID="txtfullname" runat="server" MaxLength="30"></asp:TextBox>
<span id="nameError" class="spanerror"></span>
</div>
</div>
<div class="divRegistration">
<div class="divleft">
<label> full name :<span class="spanstar">*</span></label>
</div>
<div class="divright">
<asp:TextBox ID="TextBox1" runat="server" MaxLength="30"></asp:TextBox>
<span id="Span1" class="spanerror"></span>
</div>
</div>
<asp:Button ID="btn" runat="server" text="submit" OnClientClick="return emptelephoneno();return emptelephoneno1();"
onclick="btn_Click" />
</div>
</div>
</div>
</asp:Content>
在aspx.cs页面中,我编写了以下代码:
this.txtfullname.Attributes.Add("onblur", "javascript:emptelephoneno();");
this.TextBox1.Attributes.Add("onblur", "javascript:emptelephoneno1();");
当我点击按钮时,第一个验证确实有效,但第二个验证没有。
您能提供任何建议吗?
答案 0 :(得分:0)
你永远不能在return语句之后添加任何语句,因为那些语句是无法访问的。
尝试更改:
OnClientClick="return emptelephoneno();return emptelephoneno1();"
类似于:
OnClientClick="return validate();"
&安培;在JS:
function validate() { return emptelephoneno() & emptelephoneno1(); }
答案 1 :(得分:0)
试试这个
function validateform() {
if (emptelephoneno() == true) {
if (emptelephoneno1() == true) {
return true;
}
}
return false;
}
<asp:Button ID="btn" runat="server"
Text="submit"
OnClientClick="return validateform();" />