la pagina verrà  visualizzata comunque, perché il browser vede marcatura ben formata e non effettua nessuna validazione. Ma allora se i browser non usano la DTD per assegnare un ruolo agli elementi della pagina, cosa usano? La risposta è: il namespace dell'elemento root, che in questo caso è:

http://www.w3.org/1999/xhtml

Il problema principale se vogliamo usare JavaScript all'interno di un documento XML è far riconoscere al browser l'elemento script e i suoi contenuti. Cià può anche essere ottenuto tramite XSLT, ma se volessimo una soluzione più easy, potremmo scrivere:

<?xml version="1.0" encoding="utf-8"?>
<root xmlns="http://www.w3.org/1999/xhtml">
...

</root>

Abbiamo usato il namespace XHTML sull'elemento root del nostro documento XML. In questo modo possiamo scrivere:

<para>Test</para>

<script type="text/javascript">

<![CDATA[

 alert(document.getElementsByTagName('parà )[0].firstChild.nodeValue); // 'Test'

]]>

</script>

Certamente non è una soluzione molto elegante e, ripeto, esiste anche una soluzione con XSLT. Comunque sia, questa soluzione si applica quando non vogliamo usare solo elementi XHTML e soprattutto, quando abbiamo la necessità  di eseguire degli script all'interno di un documento XML, magari a livello di test.

CommentaDi' la tua

Il tuo indirizzo email non sarà mostrato pubblicamente. I campi obbligatori sono contrassegnati da *