Javascript 如果数据为';t验证
我想在相关文本框未通过验证时更改标签的颜色。无法使用我的当前代码获得任何结果:Javascript 如果数据为';t验证,javascript,webforms,Javascript,Webforms,我想在相关文本框未通过验证时更改标签的颜色。无法使用我的当前代码获得任何结果: <asp:Label ID="lblFirstName" runat="server" Text="Your First Name*:"></asp:Label> <br /> <asp:CustomValidator ID="customValFirstName" runat="server" Text="" ControlToValidat
<asp:Label ID="lblFirstName" runat="server" Text="Your First Name*:"></asp:Label>
<br />
<asp:CustomValidator
ID="customValFirstName"
runat="server"
Text=""
ControlToValidate="txtFirstName"
ClientValidationFunction="validateFirstName"
Display="Dynamic"></asp:CustomValidator>
<asp:TextBox ID="txtFirstName" runat="server" CssClass="textbox" MaxLength="50"></asp:TextBox>
Javascript:
function validateFirstName(sender, args) {
var firstName = document.getElementById('<%=txtFirstName.ClientID %>');
var firstNameLbl = document.getElementById('<%=lblFirstName.ClientID %>');
if (firstName !== "") {
args.IsValid = true;
}
else {
args.IsValid = false;
firstNameLbl.style.color = '#FF0000';
}
};
函数validateFirstName(发送方,参数){
var firstName=document.getElementById(“”);
var firstNameLbl=document.getElementById(“”);
如果(名字!==“”){
args.IsValid=true;
}
否则{
args.IsValid=false;
firstNameLbl.style.color='#FF0000';
}
};
任何能说明我做错了什么的信息都将不胜感激。您需要比较文本框的值 将
if(firstName!==“”)更改为if(firstName.value!==“”)
还要向自定义验证器标记添加一个属性:ValidateEmptyText=“true”
否则将根本无法验证空文本当前发生了什么?是否执行了该功能?没有发生任何情况,目标标签保持初始颜色。据我所知,函数没有执行。我的其他javascript函数运行正常。顺便说一句,sender
参数的意义是什么?只是我是个懒汉。我仍然没有得到任何改变。不知道还能是什么。您是否同时更改了JavaScript部分和ASPX部分?ValidateEmptyText部分修复了它,谢谢。你是冠军。