HTML5 form validation + JS + PHP

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jasper DS

Jasper DS

17/05/2013 11:07:01
Quote Anchor link
Hoi,

ik gebruik momenteel voor mijn forms een HTML5 validatie + een beetje jquery voor het checken of twee ingegeven wachtwoorden gelijk zijn. Aangezien js en HTML front-end zijn en niet alle browsers HTML5 ondersteunen heb ik ook nog een PHP fall-back.

De PHP fall-back ontstaat in mijn domain-object, in dit geval de klasse User. User zal een InvalidArgumentException gooien als de parameter bij bijvoorbeeld setName() niet is wat ik wil dat het is. Die exception wordt opgevangen in de controller en via de controller schrijf ik deze dan weg naar die view. Dat werkt allemaal goed.

Nu wil ik mijn PHP-fallback het HTML5 uiterlijk geven. Dus ik dacht de jquery functie te gebruiken die ik ook gebruik bij de wachtwoorden-check.

Momenteel even een hardcoded stuk code voor alleen het veld email:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php if(isset($error)){ echo "<script> document.getElementById('email').setCustomValidity(".$error.") </script>"; } ?>    


helaas gebeurt er niets...
Wat loopt er mis?

Bedankt,
Jasper
Gewijzigd op 17/05/2013 12:58:01 door Jasper DS
 
PHP hulp

PHP hulp

28/01/2020 09:18:51
 
Erwin H

Erwin H

17/05/2013 11:19:41
Quote Anchor link
Ik kan twee dingen bedenken:
1) je vraagt iets op 'ById', maar geeft zo te zien een class mee (in elk geval lijkt die punt daar niet te horen)
2) het element dat je wilt selecteren komt in de DOM pas na het script waardoor het element nog niet bestaat als het script al wordt uitgevoerd.
Gewijzigd op 17/05/2013 11:20:05 door Erwin H
 
Jasper DS

Jasper DS

17/05/2013 12:59:00
Quote Anchor link
Hoi Erwin,

het punt was een foutje, dat stond er oorspronkelijk niet dus het zal waarschijnlijk je punt 2 zijn. De vraga is hoe los ik dat op en is het überhaupt wel mogelijk om te doen wat ik wil doen?
 
Erwin H

Erwin H

17/05/2013 13:07:17
Quote Anchor link
Zolang je deze script tag maar plaatst na het element in je document zou het moeten kunnen ja.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.