[C#] ValidationMessageFor geeft geen lege string

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • PdeBie
  • Registratie: Juni 2004
  • Laatst online: 07-10 07:03
Goedemorgen allemaal,

Ik zit even met de volgende uitdaging.

Volgens de documentatie van ValidationExtensions.ValidationMessageFor (https://msdn.microsoft.co...y/ee721271(v=vs.108).aspx), zou een valide veld een lege string moeten opleveren.
Return Value
Type: System.Web.Mvc.MvcHtmlString
If the property or object is valid, an empty string; otherwise, a span element that contains an error message.
Echter, de methode geeft geen lege string terug, maar een span element.

Zie hier het resultaat bij een valide veld:
C#:
1
"<span class=\"field-validation-valid\" data-valmsg-for=\"Postalcode\" data-valmsg-replace=\"true\"></span>"


En hier bij een foutief veld:
C#:
1
"<span class=\"field-validation-error\" data-valmsg-for=\"Postalcode\" data-valmsg-replace=\"true\">Postcode is verplicht.</span>"


Nu ben ik even benieuwd. Is dit een fout in de documentatie? Of interpreteer ik het verkeerd?

Beste antwoord (via PdeBie op 15-05-2018 10:50)


  • ReW
  • Registratie: December 2010
  • Laatst online: 22-09 22:11

ReW

Wat wil je precies bereiken?

Verder klopt het dat de documentatie niet heel helder is. Deze functie genereert altijd een span als je ClientValidationEnabled op true hebt staan in je Web.Config

Alle reacties


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 21:05

Haan

dotnetter

Volgens mij lees je het goed, weet je dus heel zeker dat de invoer daadwerkelijk valide is?

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • PdeBie
  • Registratie: Juni 2004
  • Laatst online: 07-10 07:03
Ja, want op mijn model heb ik alleen een Required attribuut welke pas af gaat na het posten.

Je ziet ook dat bij een valide model er een span wordt gemaakt met daarin de class field-validation-valid, waar bij een fout er een span wordt gemaakt met field-validation-error. (Heb dit in de eerste post even aangepast, verkeerd ge-copy > paste zag ik).

[ Voor 8% gewijzigd door PdeBie op 30-04-2018 08:58 ]


Acties:
  • Beste antwoord
  • +1 Henk 'm!

  • ReW
  • Registratie: December 2010
  • Laatst online: 22-09 22:11

ReW

Wat wil je precies bereiken?

Verder klopt het dat de documentatie niet heel helder is. Deze functie genereert altijd een span als je ClientValidationEnabled op true hebt staan in je Web.Config

Acties:
  • 0 Henk 'm!

  • PdeBie
  • Registratie: Juni 2004
  • Laatst online: 07-10 07:03
De span die gegenereerd wordt, veroorzaakte een onverwachte situatie. Dus ik wilde even weten waardoor die span nu gegenereerd werd en of ik de documentatie goed begreep.

Die ClientValidationEnabled node heb ik nog niet gecontroleerd in onze applicatie. Zal dat morgen op de zaak nog eens bekijken. Verwacht dat die op true staat inderdaad.