Avatar billede ghost1 Nybegynder
17. august 2006 - 10:20 Der er 11 kommentarer og
1 løsning

Problem emd rangevalidater

Hej

JEg har et problem med at få vist min fejlmeddelse som jeg kalder fra codebehind.. Første gang jeg kommer ind på siden kan jeg sagtens få den vist.. men efter jeg har submitted god data og igen får vist en tom form , og så herefter indtaster dårlig data får jeg ikke lov at submitte, hvilket jo er okay , men får heller ingen fejlmeddelse..

Frontend kode

<asp:RangeValidator ID="RangeValidator1" runat="server" controltovalidate="intOrderTextBox" Type="Integer" MinimumValue="1" MaximumValue="100" />


codebehind

RangeValidator vIntOrder = FormView1.FindControl("RangeValidator1") as RangeValidator;


        vIntOrder.ControlToValidate = "intOrderTextBox";
        vIntOrder.ErrorMessage = "tester";


håber der er en med en forklaring, for det er en smule mystisk :(

/B
Avatar billede dr_chaos Nybegynder
17. august 2006 - 10:22 #1
paste lige hele din kode
Avatar billede ghost1 Nybegynder
17. august 2006 - 10:29 #2
codebehind :

protected void Page_Load(object sender, EventArgs e)
    {

      // Response.Write("hej");

        RangeValidator vIntOrder = FormView1.FindControl("RangeValidator1") as RangeValidator;


        vIntOrder.ControlToValidate = "intOrderTextBox";
        vIntOrder.ErrorMessage = "tester";

       
    }



html :

<asp:FormView ID="FormView1" runat="server" DataKeyNames="idItem" DataSourceID="SqlDataSource1" Width="357px" DefaultMode="Insert" >
        <EditItemTemplate>
         
                    <asp:TextBox ID="intOrderTextBox" runat="server" Text='<%# Bind("intOrder") %>' class=txtbox>
                    </asp:TextBox>
         
            <asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert"
                Text="Insert">
            </asp:LinkButton>
       
            </td>
            </tr>
     
            </table>
           
         
          <asp:RangeValidator ID="RangeValidator1" runat="server" controltovalidate="intOrderTextBox" Type="Integer" MinimumValue="1" MaximumValue="100" />

 
           
        </EditItemTemplate>
       
       
    </asp:FormView>
Avatar billede ghost1 Nybegynder
17. august 2006 - 10:33 #3
hov
første linie er der en fejl.. mangler en "/"

<asp:FormView ID="FormView1" runat="server" DataKeyNames="idItem" DataSourceID="SqlDataSource1" Width="357px" DefaultMode="Insert" />
Avatar billede ghost1 Nybegynder
17. august 2006 - 10:35 #4
okay jeg koger lige nu, glem sidste kommentar
Avatar billede dr_chaos Nybegynder
17. august 2006 - 10:36 #5
hehe
Har du et validation summary ?
Ellers skal du tilføje et.

du skal fjerne  // Response.Write("hej");

        RangeValidator vIntOrder = FormView1.FindControl("RangeValidator1") as RangeValidator;


        vIntOrder.ControlToValidate = "intOrderTextBox";
        vIntOrder.ErrorMessage = "tester";

fra page_load
Avatar billede dr_chaos Nybegynder
17. august 2006 - 10:37 #6
brug
  <asp:RangeValidator ID="RangeValidator1" runat="server" controltovalidate="intOrderTextBox" ErrorMessage="tester"  Type="Integer" MinimumValue="1" MaximumValue="100" />
Avatar billede dr_chaos Nybegynder
17. august 2006 - 10:37 #7
man validerer ikke i page_load.
Avatar billede ghost1 Nybegynder
17. august 2006 - 10:40 #8
jo man burde kunne gøre det derfra.. problemet er at sproget på fejlen godt kan skifte , og dette er lettere at gøre fra codebehind.. ved godt den anden tese virker
Avatar billede ghost1 Nybegynder
17. august 2006 - 10:41 #9
er der en anden event jeg kan kalde? synes jeg har prøvet et par stykker :(
Avatar billede dr_chaos Nybegynder
17. august 2006 - 10:54 #10
<asp:RangeValidator ID="RangeValidator1" runat="server" controltovalidate="intOrderTextBox" ErrorMessage='<%# getErrorMsg()%>'  Type="Integer" MinimumValue="1" MaximumValue="100" />


i codebehind laver du

public string getErrorMsg()
{
Return "tester";
}
Avatar billede ghost1 Nybegynder
17. august 2006 - 13:21 #11
det er jo rigtigt nok det du skriver, ville gerne bare have lavet alt fra codebehind.. men smid et svar , så får du points

vh B
Avatar billede dr_chaos Nybegynder
17. august 2006 - 14:25 #12
svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester