Re: can't get evaluationfunction attribute set correctly on CustomValidator
- From: "Teemu Keiski" <joteke@xxxxxxxxxxxxxxx>
- Date: Sun, 5 Aug 2007 10:46:15 +0300
They aren't written from Attributes collection but directly as expando
attribute on the derived, concrete validator implementation
protected override void AddAttributesToRender(HtmlTextWriter writer)
{
base.AddAttributesToRender(writer);
if (base.RenderUplevel)
{
string controlId = this.ClientID;
HtmlTextWriter writer2 = base.EnableLegacyRendering ? writer : null;
base.AddExpandoAttribute(writer2, controlId, "evaluationfunction",
"CustomValidatorEvaluateIsValid", false);
if (this.ClientValidationFunction.Length > 0)
{
//client-side registration
}
}
}
AddExpandoAttribute is implemented as follows
internal static void AddExpandoAttribute(Control control, HtmlTextWriter
writer, string controlId, string attributeName, string attributeValue, bool
encode)
{
if (writer != null)
{
writer.AddAttribute(attributeName, attributeValue, encode);
}
else
{
control.Page.ClientScript.RegisterExpandoAttribute(control,
controlId, attributeName, attributeValue, encode);
}
}
so basically you could try registering the attribute with
control.Page.ClientScript.RegisterExpandoAttribute yourself.
--
Teemu Keiski
AspInsider, ASP.NET MVP
http://blogs.aspadvice.com/joteke
http://teemukeiski.net
"TS" <manofsteele1@xxxxxxxxxxxxx> wrote in message
news:ee0oA5g1HHA.5532@xxxxxxxxxxxxxxxxxxxxxxx
i found out that this is in the base class to my class (which is inherited
from customvalidator)
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter
writer)
{
/// TODO: Get rid of the Custom EvaluationFunction
Attributes.Remove("evaluationfunction");
Attributes["evaluationfunction"] = "CustomValidatorEvaluateFunction";
base.AddAttributesToRender(writer);
writer.AddAttribute("requiredfield", RequiredField.ToString().ToLower());
writer.AddAttribute("validatewhenempty",
ValidateEmptyText.ToString().ToLower());
writer.AddAttribute("label", Label);
writer.AddAttribute("validationGroup1", ValidationGroup1);
}
i tried the same remove() function as above in my overriden method but no
luck :(
"TS" <manofsteele1@xxxxxxxxxxxxx> wrote in message
news:OHJf1rg1HHA.1164@xxxxxxxxxxxxxxxxxxxxxxx
i want to specify evalutionfunction for my custom validator control. ihave
tried many ways to get this to work, but in the end, theevaluationfunction
attribute always gets rendered as the defaultid="ctl00_ctl00_ContentMainPlaceHolder_ApplicationContentMainPlaceHolder_cbC
"CustomValidatorEvaluateFunction":
<span
lientSigned" evaluationfunction="CustomValidatorEvaluateFunction"attributes.
requiredfield="false" validatewhenempty="false" label="" validationGroup1
mustBeChecked="true" style="color:Red;display:none;"></span>
protected override void AddAttributesToRender(HtmlTextWriter writer){
base.AddAttributesToRender(writer); string x;
//this.ClientValidationFunction = "CheckBoxValidatorEvaluateIsValid";
//writer.AddAttribute("evaluationfunction",
"CheckBoxValidatorEvaluateIsValid", false);
Attributes.Add("evaluationfunction", "CheckBoxValidatorEvaluateIsValid");
writer.AddAttribute("mustBeChecked", MustBeChecked ? "true" : "false",
false);
}
how do i do this correctly? I have tried to also not override
AddAttributesToRender and instead in prerender just add these 2
No matter what i do, evaluationfunction gets overwritten somewhere
what can i do?
.
- References:
- Prev by Date: Re: can't get evaluationfunction attribute set correctly on CustomValidator
- Next by Date: Marlboro....cigarettes for $11.99. Delivery to USA & EUROPE.....hDohCr9BHBGo
- Previous by thread: Re: can't get evaluationfunction attribute set correctly on CustomValidator
- Next by thread: Re: can't get evaluationfunction attribute set correctly on CustomValidator
- Index(es):
Relevant Pages
|