Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Gli script in XHTML

Come gestire i linguaggi di scripting all'interno di documenti XHTML
Come gestire i linguaggi di scripting all'interno di documenti XHTML
Link copiato negli appunti

Uno degli argomenti più spinosi relativi a XHTML è la gestione dei linguaggi di programmazione, tradizionalmente incorporati nel documento con il tag <script>. Procediamo con ordine.

Uso di <script>

In HTML il tag <script> serve a incorporare nel documento codice di programmazione. Il linguaggio più comunemente usato è Javascript. Il tag è supportato anche in XHTML e va ugualmente inserito nella sezione <head>....</head>. L'elemento <script> supporta i seguenti attributi:

charset Specifica la codifica dei caratteri
defer Dice al browser che lo script non genera documenti
langauage Specifica il linguaggio di scripting. È obbligatorio
quando l'attributo src non è specificato.
src Contiene l'URL di uno script contenuto in un file esterno
type Obbligatorio. Indica il tipo MIME dello script: es "text/javascript"
xml:space Usato per mantenere la spaziatura del codice

Dunque, uno script può essere direttamente incorporato nella pagina oppure inserito in un file esterno e richiamato:

Script incorporato

<script type="text/javascript" language="javascript">
<!--
document.open()
document.writeln("Questo è XHTML!")
document.close()
//-->
</script>

Script collegato

<script type="text/javascript"
src="mioscript.js">

</script>

Caratteri pericolosi

Fin qui niente di nuovo. Il problema sorge quando nello script si utilizzano caratteri "pericolosi" (sensitive characters nella definizione XHTML). Si tratta di caratteri che possono ingenerare confusione e fraintendimenti perchè il processore XML li interpreta in un modo, nel linguaggio di scripting hanno tutt'altro significato. In Javascript > significa "maggiore di"; in XML indica la chiusura di un tag. Che fare? Il W3C suggerisce due vie, ma entrambe presentano punti deboli.

Usare le sezioni CDATA

Nella specifica si suggerisce di racchiudere gli script all'interno di una sezione CDATA. Esse vengono usate in documenti XML per racchiudere blocchi di testo contenenti caratteri che potrebebro essere interpretati come elementi di marcatura.

Una sezione CDATA inizia con la stringa <![CDATA[ e termina con ]]>. Ecco come lo script visto in precedenza apparirebbe:

<script type="text/javascript" language="javascript">
<![CDATA[
document.open()
document.writeln("Questo è XHTML!")
document.close()
]]>
</script>

Il punto debole di questo approccio è che i nostri browser non gestiscono affatto bene le sezioni CDATA.

Usare script esterni

Si potrebbe ovviare scrivendo gli script in un file esterno e collegandolo al documento. Tutto bene. Ma se bisogna modificare lo script, magari con ASP o comunque con variazioni lato server? Non è possibile farlo.

E allora? In effetti, se la situazione è quella appena prospettata, non rimane che usare il vecchio metodo. Avremo un documento non conforme al 100% in attesa che XHTML sia in grado di incorporare i linguaggi di scripting diversamente.

Ti consigliamo anche