data-nette-rules a xhtml transitional

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

Zdravím,
při W3C validaci html kódu mně při doctype XHTML 1.0 Transitional nastává při přidání form rule validační chyba. Neví někdo co s tím ?

výpis vygenerovaného zdrojáku:

<input type="text" class="text" name="email" id="frmlogin-email" required="required" data-nette-rules="{op:':filled',msg:'Zadejte e-mailovou adresu.'},{op:':email',msg:&quot;E-mailov\u00e1 adresa je \u0161patn\u011b zadan\u00e1.&quot;}" data-nette-empty-value="&#64;" value="&#64;" />

výpis z W3C validace:

Line 129, Column 116: there is no attribute "data-nette-rules"

…="frmmailForm-email" data-nette-rules="{op:':filled',msg:&quot;pros\u00edm vyp…

popisný text validace:

You have used the attribute named above in your document, but the document type you are using does not support that attribute for this element. This error is often caused by incorrect use of the "Strict" document type with a document that uses frames (e.g. you must use the "Transitional" document type to get the "target" attribute), or by using vendor proprietary extensions such as "marginheight" (this is usually fixed by using CSS to achieve the desired effect instead).

This error may also result if the element itself is not supported in the document type you are using, as an undefined element will have no supported attributes; in this case, see the element-undefined error message for further information.

How to fix: check the spelling and case of the element and attribute, (Remember XHTML is all lower-case) and/or check that they are both allowed in the chosen document type, and/or use CSS instead of this attribute. If you received this error when using the <embed> element to incorporate flash media in a Web page, see the FAQ item on valid flash.

děkuji předem za radu

norbe
Backer | 405
+
0
-

Použít doctype HTML5 :-)

Aurielle
Člen | 1281
+
0
-

data-* parametry obsahuje až HTML5 specifikace.

Vyki
Člen | 388
+
0
-

Asi jediné řešení, pokud trváš na validním XHTML kódu, je použít verzi Nette, kde se validace řešila pomocí clientScriptu. Ta chyba co ti to vyhazuje, je kvůli datovým atributům formuláře, ve kterých jsou uložena validační pravidla. Nette jde směrem HTML5 a tam se datové atributy používají.

mantisson
Člen | 4
+
0
-

díky za rady !!!

2bfree
Člen | 248
+
0
-

Osobně mě to rovněž mrzí že se generuje nevalidní XHTML kód. I to že se přidává atribut required=„required“.
Nešlo by doplnit nějaký parametr při vytváření formuláře v továrničce, aby generoval striktně validní XHTML?

David Grudl
Nette Core | 8147
+
0
-
  • Nette 0.9.7 plně podporuje XHTML a jiná kódování než UTF-8
  • Nette 2 plně podporuje HTML5 a kódování UTF-8

Pokud potřebuješ XHTML, doporučuju použít starší verzi – je dobrá. Jen v mantinelech XHTML vývoj neměl moc kam pokračovat, proto nová verze XHTML zahodila a připravuje se na HTML5.

2bfree
Člen | 248
+
0
-

David Grudl napsal(a):

  • Nette 0.9.7 plně podporuje XHTML a jiná kódování než UTF-8
  • Nette 2 plně podporuje HTML5 a kódování UTF-8

Pokud potřebuješ XHTML, doporučuju použít starší verzi – je dobrá. Jen v mantinelech XHTML vývoj neměl moc kam pokračovat, proto nová verze XHTML zahodila a připravuje se na HTML5.

A není to tak trochu škoda, opouštět XHTML validitu kvůli takové hlouposti, jakou je upozornění uživatele na povinnost vyplnění pole? Přitom by se to dalo dělat externím skriptem. Tedy stačí, aby appForm měl atribut, kterým se dá nastavit, aby se negenerovaly HTML5 specialitky.

Prosím prosím. Nechci se vracet ke staré verzi jen kvůli tomuhle…

Nox
Člen | 378
+
0
-

Není trochu škoda zahodit možnost jednoduššího zpracování featury která přistpívá k uživatelské přívětivosti – což je defakto na webu skoro nejdůležitější – kvůli takové hlouposti jakou je validita, která v konečném důsledku nemá na nic vliv… ?

David Grudl
Nette Core | 8147
+
0
-

XHTML je mrtvá záležitost a nenapadá mě jediný důvod, proč na něm lpět. Jaký máš důvod, že tak nutně potřebuješ mít XHTML validní web?

Aurielle
Člen | 1281
+
0
-

Udělej si fork Nette a dopiš si tam tuhle podporu. Jak už bylo zmíněno, XHTML nemá budoucnost, navíc všechny XHTML návyky můžeš používat i v HTML5, takže ti nic nebrání HTML5 nepoužít.

2bfree
Člen | 248
+
0
-

Jenom kvůli kompatibilitě se „všemi“ zařízeními. Ale asi máte pravdu.

Když bych tedy přešel na HTML 5, víte o nějakém pěkném offline HTML validatoru, jako byl tento?
https://addons.mozilla.org/…l-validator/

Editoval 2bfree (18. 1. 2011 9:11)