webForumDet fria alternativet

skilja på validator och validator

.NETur .NET

3 svar · 207 visningar · startad av Dino

DinoMedlem sedan sep. 20011 914 inlägg
#1

Har i en userControll två separata input med dess validatorer och knapp, typ nedan kod:

...
'En input och dess behag
<tr>
   <td>
      <asp:TextBox id="tbSearch" width="100%" runat="server" />
   </td>
</tr>
<tr>
   <td>
      <asp:Button runat="server" Text="Sök" id="btSearch" />
      <asp:RequiredFieldValidator id="valrSearch" runat="server" ErrorMessage="Haha" ControlToValidate="tbSearch"/>
   </td>
</tr>
...
'En till input och dess bekvämligheter
<tr>
   <td>
      <asp:TextBox id="tbNewsletter" width="100%" runat="server" />
   </td>
</tr>
<tr>
   <td align="middle">
      <asp:RequiredFieldValidator id="valrSubscribe" runat="server" ErrorMessage="Hoho" ControlToValidate="tbNewsletter"/>
      <asp:Button runat="server" Text="Prenumerera" id="btSubscribe" />
   </td>
</tr>
...

Problemet är att när jag trycker på en knapp så utlöses båda tvås validatorer. Och då tänkte jag att jag kunde lösa det med att endast kolla den tryckta knappens input, typ:

If valrSearch.IsValid Then
   ...
End If

Men den funkade ju självklart inte så vad gör man???

NETworkMedlem sedan juni 20011 732 inlägg
#2

Det där är en väl dokumenterad begränsning, det verkar inte finnas någon möjlighet att styra validatorerna på det sätte du vill. Men om du vet att den ena knappen alltid kommer att tryckas på först så kan du ju tills vidare stänga av den andra validatorn... och sedan när den första har postats tillbaka så sätter du på den andra och stänger av den första. Vill du vara riktigt avancerad så går det ju att själv koda extra funktionalitet i de js-filer som validatorerna använder, men det är nog inte helt lätt förstås...

Kanske detta har kompletterats i v1.1? Tror inte det iofs... vi får antagligen vänta på version 2 av .net men då är jag övertygad om att den här funktionaliteten kommer att finnas med!

DinoMedlem sedan sep. 20011 914 inlägg
#3

Hmm, det var ju typiskt. :x Tyvärr kan jag inte veta vilken knapp som användare skall trycka på och js-filerna vågar jag nog inte röra än. Får väl lämna det därhän tills vidare då. ***

kristofferMedlem sedan juni 20001 257 inlägg
#4

Det finns en lösning om jag har förstått ditt problem rätt: http://www.codeproject.com/aspnet/groupvalidator.asp

136 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)