„Vyplňte prosím toto pole.“ ← Dá sa editovať tento text?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Durisvk
Člen | 31
+
+1
-

Hrabal som sa v netteForms.js, no nenašiel som miesto, kde sa vkladá tento textový reťazec („Vyplňte prosím toto pole.“) do tooltipu nad textovým poľom. Neviete spôsob, akým by sa dal ten text zmeniť prosím Vás?

xificurk
Člen | 121
+
+4
-

Ten tooltip je renderován prohlížečem(*), protože input má nastaven required atribut.

(*) A nejsem si jistý, jakými všemi, protože Chrome ani Firefox, které jsem teď v rychlosti testnul to nedělají.

Šaman
Člen | 2665
+
+4
-

Nette js validace vyhazuje klasický alert.

David Matějka
Moderator | 6445
+
0
-

Zmenit se (asi) neda, ale html5 validace se necha vypnout pomoci atributu novalidate u formulare, v php pri vytvareni formu pak:

$form->elementPrototype->novalidate = "novalidate";
Aurielle
Člen | 1281
+
+3
-

Pokud máš správně připojené netteForms.js, měla by se HTML5 validace automaticky vypnout a místo ní ti bude validovat právě netteForms.js, který, jak bylo řečeno, vyhazuje běžné alerty. Pokud se nativní validace sama nevypne, nejspíš nepřipojuješ skript správně.

ic
Člen | 430
+
+2
-

Čekal jsem, že po těch letech na tu už něco bude … a nic :(

W3C se vyjadřovalo něco ve smyslu, že upravit tuto hlášku neumožní, ale doufal jsem, že znění názor… no nevypadá to.

Takže text „Vyplňte prosím toto pole.“ se editovat sice dá, ale jen s využitím javascriptu a události oninvalid, ve které zavolám JS funkci setCustomValidity('Vlastní chybová hláška').

Z ne-js možností je tu jen atribut x-moz-errormessage který, jak je hned patrné, funguje pouze v FF. Nevím, že tenkrát nevyužili data- atribut, protože takhle je to vlastně nevalidní.

Takže asi nejlépe využívat:

	<input type="text" oninvalid="setCustomValidity('Vlastní chybová hláška')" name="…" required>

Přemýšlel jsem nad přestavbou nette formulářů a javascriptu netteForms.js, aby si pomocná data chybové hlášky ukládala právě do oninvalid="setCustomValidity('…')" , ale moc výhod to nepřinese, bez JS to stejně nepojede, takže leda výhoda to, že pokud se nepodaří z nějakého důvodu načíst netteForms.js script by to něco dělalo. Což myslím, že za to snad ani nestojí.

Využít pro ukládání chybových hlášek atribut x-moz-errormessage by bylo zase nevalidní, takže zatím to vypadá že žádné elegantní řešení neexistuje… počkám pár let a mrknu na to znovu :)