[ASP.NET] RequiredFieldValidators vraag

Pagina: 1
Acties:

  • _Rob
  • Registratie: Januari 2003
  • Laatst online: 17-04 08:49
Ik heb een formulier om gebruikers te registreren en de velden (naam, pass, validatepass) hebben een requiredFieldValidator eraan gekoppeld. Dit werkt alleenstaand perfect. Echter op de pagina staat ook een datagrid met een editCommandColumn die direct toegang heeft tot de gebruikers in de database en deze kan bewerken (bewerk, opslaan en annuleer). Wanneer ik een wijziging maak en op de 'opslaan' knop klik worden de requiredFieldValidators ineens actief en genereren de errorText (want de de register velden zijn niet ingevuld) terwijl ik op dat moment geen gebruiker wil creeeren.

Ik heb op diverse zoekmachines gezocht en heb gevonden dat CausesValidation="False" in een button de velden negeert. Maar dit is niet te gebruiken in een editCommandColumn.

Ook heb ik requiredFieldValidators weg gehaald en m.b.v. code de Text velden laten validaten. Helaas werkt dit niet en krijg ik steeds de fout "input string is not in a correct format".

Wat zijn andere opties? Alvast bedankt.

Webdeveloping... -counts to 10- Sigh...


  • GaveGozer
  • Registratie: Februari 2000
  • Laatst online: 25-09-2025

GaveGozer

That's Me

de laatste die jij geschreven hebt waarom werkt dat niet? laat je wel controleren op het juiste type string?

Ik was hier en ai 't nie geleuf dan maak ik ow so wat anders wies!


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:02
Ik geloof wel dat zo'n editcommandbutton een property 'doesvalidation' oid heeft, waarmee je de werking van een validator kunt uitschakelen als er op die button geklikt wordt.
Je zult ff de juiste naam moeten zoeken, want die schiet me nu zo niet te binnen.

Anders kan je de active property van de validator ook op false zetten.

https://fgheysels.github.io/


  • _Rob
  • Registratie: Januari 2003
  • Laatst online: 17-04 08:49
Waarschijnlijk doe ik iets ernstigs mis..

Hierbij een stuk code die ik gebruik om de naam te controleren.

ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
If Naam.Text <> "" Then

            Dim NaamC = Convert.ToString(Naam.Text)

            Dim myConn As SqlConnection = New SqlConnection(ConfigurationSettings.AppSettings("ConnectionString"))
            myConn.Open()

            Dim myComm As SqlCommand = New SqlCommand("GebruikersCheck", myConn)
            myComm.CommandType = CommandType.StoredProcedure

            Dim parameterRegNaam As SqlParameter = New SqlParameter("@RegNaam", SqlDbType.NVarChar, 50)
            parameterRegNaam.Direction = NaamC
            myComm.Parameters.Add(parameterRegNaam)

            Dim parameterNaam As SqlParameter = New SqlParameter("@Naam", SqlDbType.NVarChar, 50)
            parameterNaam.Direction = ParameterDirection.Output
            myComm.Parameters.Add(parameterNaam)

            myConn.Open()
            myComm.ExecuteNonQuery()
            myConn.Close()

            Dim NaamCheck As String = CStr(parameterNaam.Value)

            If NaamCheck Is DBNull.Value Then
                ' Password veld check
                If Password.Text <> "" Then


Edit:
Optioneel de sql stored procedure van gebruikersCheck.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CREATE Procedure GebruikersCheck
(
    @RegNaam nvarchar(50),
    @Naam nvarchar(50) OUTPUT
)
AS

SELECT 
    @Naam = Naam

FROM 
    InkoopGebruikers

WHERE 
    Naam = @RegNaam

[ Voor 14% gewijzigd door _Rob op 04-04-2003 10:35 ]

Webdeveloping... -counts to 10- Sigh...


  • _Rob
  • Registratie: Januari 2003
  • Laatst online: 17-04 08:49
whoami schreef op 04 April 2003 @ 10:32:
Ik geloof wel dat zo'n editcommandbutton een property 'doesvalidation' oid heeft, waarmee je de werking van een validator kunt uitschakelen als er op die button geklikt wordt.
Je zult ff de juiste naam moeten zoeken, want die schiet me nu zo niet te binnen.

Anders kan je de active property van de validator ook op false zetten.
_/-\o_ Ik ga weer even verder knutselen ;) Bedankt

Webdeveloping... -counts to 10- Sigh...


  • _Rob
  • Registratie: Januari 2003
  • Laatst online: 17-04 08:49
Die doesvalidation bestaat volgens mij niet in een editcommandcolumn (heb er op gezocht) en die validator op false werkt niet bij mij..

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Public Sub DataGrid_Update(ByVal Source As Object, ByVal E As DataGridCommandEventArgs)

        ReqNaam.Enabled = False
        ReqPass.Enabled = False
        ReqConfPass.Enabled = False

        Dim GebruikersId As Integer = E.Item.Cells(1).Text
        Dim PassText As TextBox = E.Item.Cells(3).Controls(0)
        Dim NiveauText As TextBox = E.Item.Cells(4).Controls(0)

        Dim accountSystem As Admin.AdminDB = New Admin.AdminDB()
        Dim GebruikersUpdate As String = accountSystem.GebruikersUpdate(GebruikersId, PassText.Text, NiveauText.Text)

        MyList.EditItemIndex = -1
        BindMembers()

    End Sub

Webdeveloping... -counts to 10- Sigh...


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Eventueel kan je een eigen (template) column maken, waarin je de button wel goed zet.

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1