Autor Zpráva
Venca V
Profil
Zdravím, zkoušel jsem si napsat stránku místo v HTML 4.01 transitional v XHTML 1.0 transitional, ve validátoru mám jeden problém:


<form>
....
<script type="text/javascript">
document.write('<input type="hidden" name="url" value="no' + 'spam" />');
</script>
.....


vyhazuje mi to chybu, že element input není v nalezeném kontextu povolen. Poradí mi prosím někdo, kde mám chybu?
Děkuji.
[url=http://validator.w3.org/check?uri=http%3A%2F%2Fxhtml.pillowfight. cz%2Findex.php&charset=%28detect+automatically%29&doctype=Inline&ss=1& group=0]
odkaz na výsledek validátoru[/url]
Venca V
Profil
sorry, tady je odkaz
Text odkazu
Str4wberry
Profil
Venca V
Co ten skript obalit:

<script type="text/javascript">
/* <![CDATA[ */
document.write('<input type="hidden" name="url" value="no' + 'spam" />');
/* ]]> */</script>
Joker
Profil
Při validaci toho odkazu to vyhodí jinou chybu, a to neukončený odkaz. Řešení jednoduché, chybí tam </a>

S tím inputem, prvek <input> nemůže být přímý potomek prvku <form> uvnitř formu musí být ještě třeba <p> nebo <fieldset> a v něm potom <input>
Důvod tohoto mi není tak docela jasný.

edit: ten druhý odkaz to trochu upřesnil, takže to je jak píše Str4wberry
Venca V
Profil
Str4wberry

<script type="text/javascript">
/* <![CDATA[ */
document.write('<input type="hidden" name="url" value="no' + 'spam" />');
/* ]]> */</script>


díky moc, už je to zelený;-)
Chamurappi
Profil
Reaguji na Vencu V:
Používej český validátor, ten se podle <!doctype> deklarace nepřepíná do XML režimu a neupozorňuje na nesmysly.
Venca V
Profil
Chamurappi -
Používej český validátor, ten se podle <!doctype> deklarace nepřepíná do XML režimu a neupozorňuje na nesmysly.
abych pravdu řekl, píšu v HTML 4.01 transitional, a pokud půjde o stránky, které budu dělat pro sebe tak budu psát pořád. Ale chtěl jsem si vyzkoušet i XHTML, protože to (možná) budu potřebovat v projektech pro jiné. Tvůj validátor používám pořád, mám to rozšíření do FF (Nástroje>ověřit validitu) , ale v tomto případě mi bohužel nepomohl, neboť mi poradil, abych změnil doctype na HTML 4.01 transitional, což bohužel z výše uvedených důvodů nemohu. Nechci se pouštět do nějakých debat na toto téma, protože se v něm rozhodně nepovažuji za odborníka, ale doufám, že se dá tento důvod alespoň pochopit...

w3.cz
w3.org
Chamurappi
Profil
Reaguji na Vencu V:
Ale chtěl jsem si vyzkoušet i XHTML
Tvůj kód je všemi prohlížeči nadále intepretován jako HTML 4. Lomítka v <meta />, <link /> a spol. jsou ignorována. V kódu, který ti poradil Str4wberry, jsou části <![CDATA[ a ]]> zakomentovány, protože jim cílová zařízení nerozumí a zpracovávají je tedy jako část skriptu. Také metodu document.write, kterou užíváš, v XHTML prohlížeče běžně nepodporují — musel bys upravit skript, kdyby to opravdu bylo XHTML. Jediné cílové zařízení, které dotyčný dokument vnímá jako XHTML, je W3C Validátor.

Změnil jsi <!doctype>, připsal lomítka a xmlns — ale tím jsi pouze poškodil dříve tak pěkný HTML kód. Škoda.
Venca V
Profil
Jak jsem řekl, osobně budu vždycky psát HTML, zkusím si to obhájit i před případným zákazníkem;-) Díky.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0