jQuery validator regex v sablone a nezname makro
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- dubak
- Člen | 41
Zdravim,
mam taky problem. Mam v sablone rucne vykresleny formular:
<form action="{link editNewsletterForm!}" method="post" id="editNewsletterForm_{$iterator->getCounter()}">
// obsah formulara
</form>
Formular pred odoslanim validujem cez jQuery validator. No a chcel som si vytvorit vlastny regularny vyraz na validaciu e-mailu a problem je vtom, ze nemozem pouzit sekvenciu „rozsah opakovania“, lebo vtedy mi Nette vyhlasi, ze take makro nepozna, lebo narazi na zatvorky „vrany“ {2,4}
<script>
// regularny vyraz na tvar emailu
$.validator.addMethod("emailRegex", function(value, element) {
return this.optional(element) || /^[a-z0-9]+(\@)([a-z0-9]+)(\.)([a-z0-9]{2,4})(\.)?([a-z0-9]{2,4})?$/i.test(value);
});
</script>
Tak rozmyslam, ze co s tym. Da sa to vyriesit tak, ze nebudem pouzivat rozsah opakovania cez vrany, ale natvrdo tam dam pocet opakujucich sa znakov, napr.
<script>
// regularny vyraz na tvar emailu
$.validator.addMethod("emailRegex", function(value, element) {
return this.optional(element) || /^[a-z0-9]+(\@)([a-z0-9])+(\.)([a-z0-9])([a-z0-9])([a-z0-9])?([a-z0-9])?(\.)?([a-z0-9])?([a-z0-9])?([a-z0-9])?([a-z0-9])?$/i.test(value);
});
</script>
Ale to sa mi nejavi programatorsky moc dobre riesenie. Narazil niekto uz na
takyto problem? A ak ano, ako to riesil?
Vdaka