如何检查所需的字段验证器是否在C#中被触发? [英] how to check required field validator is fired or not in c#?
本文介绍了如何检查所需的字段验证器是否在C#中被触发?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用了如下所示的禁用按钮代码,然后在按钮还发回时触发了必填字段.所以我想检查必填字段是否被触发,如下所示.
I have using like below disabling code for button then required fields firing when but also button goes to postback. so I want to check required field is fired or not like below.how?
protected void Page_Load(object sender, EventArgs e)
{
btnPackageSubmit.Attributes.Add(
"onclick",
"this.disabled=true;"
+ ClientScript.GetPostBackEventReference(btnPackageSubmit, "")
.ToString());
}
protected void btnPackageSubmit_Click(object sender, EventArgs e)
{
System.Threading.Thread.Sleep(2000);
if (reqPackNameAdd.IsValid == true
|| reqPackPeriodAdd.IsValid == true
|| reqPackPriceAdd.IsValid == true
|| regPackNameAdd.IsValid == true
|| regPackPrice.IsValid == true)
{
return;
}
}
推荐答案
有一个名为IsValid的属性,它是页面类的一部分.
那也是我的第一个本能.但是快速测试表明(无论如何),它不起作用.可能是因为在JS代码运行之后发生了验证.
所以我这样做是这样的:
函数saveForm(c)
{
如果(Page_ClientValidate())
{
c.disabled = true;
警报(``是''); //我添加了此代码以验证按钮已被禁用
__doPostBack(c.id,``''); //您必须使用它,因为.click()不能在禁用的按钮上起作用.
}
There is a property called IsValid which is part of the page class.
That was my first instinct as well. But a quick test showed (me anyway) that it didn''t work. Probably because valiation occurs after the JS code runs.
So I did it like this:
function saveForm(c)
{
if (Page_ClientValidate())
{
c.disabled = true;
alert(''Yes''); // I added this to validate the button was getting disabled
__doPostBack(c.id, ''''); // you have to use this because .click() won''t work on a disabled button.
}
这篇关于如何检查所需的字段验证器是否在C#中被触发?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文