本文介绍了当 ASP.NET 验证失败时更改文本框的 css 类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
当附加到文本框的必填字段验证器未能通过客户端验证时,我如何执行一些 javascript?我想要做的是更改文本框的 css 类,使文本框的边框显示为红色.
How can I execute some javascript when a Required Field Validator attached to a textbox fails client-side validation? What I am trying to do is change the css class of the textbox, to make the textbox's border show red.
我正在使用网络表单,并且我有可用的 jquery 库.
I am using webforms and I do have the jquery library available to me.
推荐答案
这是快速而肮脏的事情(但它有效!)
Here is quick and dirty thing (but it works!)
<form id="form1" runat="server">
<asp:TextBox ID="txtOne" runat="server" />
<asp:RequiredFieldValidator ID="rfv" runat="server"
ControlToValidate="txtOne" Text="SomeText 1" />
<asp:TextBox ID="txtTwo" runat="server" />
<asp:RequiredFieldValidator ID="rfv2" runat="server"
ControlToValidate="txtTwo" Text="SomeText 2" />
<asp:Button ID="btnOne" runat="server" OnClientClick="return BtnClick();"
Text="Click" CausesValidation="true" />
</form>
<script type="text/javascript">
function BtnClick() {
//var v1 = "#<%= rfv.ClientID %>";
//var v2 = "#<%= rfv2.ClientID %>";
var val = Page_ClientValidate();
if (!val) {
var i = 0;
for (; i < Page_Validators.length; i++) {
if (!Page_Validators[i].isvalid) {
$("#" + Page_Validators[i].controltovalidate)
.css("background-color", "red");
}
}
}
return val;
}
</script>
这篇关于当 ASP.NET 验证失败时更改文本框的 css 类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!