Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Validazione ed E Commerciale

    Allora vediamo un po'.
    Ho creato una chat aggiornando i dati con richieste asincrone.
    Comincio col mettere le parti salienti del codice:

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Chat</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script language="javascript" type="text/javascript" src="../include/funzioniChat.js"></script>
    <script language="javascript" type="text/javascript">
    window.onload = function(){
    	recuperaAzione("../elaborazione/leggiChat.php?luogo=1&codiceChat=300");
    	setInterval('recuperaAzione("../elaborazione/leggiChat.php?luogo=1&codiceChat=300")', 30000);
    }
    </script>
    </head>
    <body>
    <form action="<?php print $_SERVER['PHP_SELF'] ;?>" name="scriviAzione" method="post" onsubmit="return false">
    <input type="submit" id="buttonInvia" name="invia" class="botton" value="Invia" onclick="inviaAzione('../elaborazione/scriviChat.php?luogo=1&amp;codiceChat=300')" />
    </form>
    </body>
    </html>

    Il punto in questione sono le & commerciali.
    Io so che bisogna metterle come entità e per questo vanno messe come &amp;.
    Ma il fatto è che se le scrivo come &amp; le funzioni di recupero testo non vanno mentre se le lascio come & tutto funziona regolarmente.

    Ma se le lascio come &, il validatore W3C mi genera errore.
    Come devo fare?

  2. #2
    devi mettere il codice che non sposti in un file .js tra

    <![CDATA[//><!--

    //Codice JS

    //--><!]]>
    I DON'T Double Click!

  3. #3
    Grazie della risposta.
    Effettivamente inserendo quel codice posso lasciare la & non come entità, facendo in modo che tutto funzioni e non facendo dare errore al validatore.

    Ma in pratica quei commenti cosa fanno/dicono?

  4. #4
    La questione è che alcuni browser interpreta JS, ed altri no.
    Per questo si usa:



    è il commento HTML, quando un browser supporta JS quello che viene messo in un TAG script con type text/javascript viene interpretato ed i commenti HTML vengono ignorati. Quindi, se il browser interpreta JS vede:

    //

    Se non lo interpreta non vede niente.

    <![CDATA[ invece è un costrutto XML che indica testo generico che non è sottoposto alla validazione, quindi ci puoi inserire caratteri speciali senza usare le entity.

    Il tutto significa:

    Se il browser supporta JS, definisci:

    //<![CDATA[//>

    //<!]]>

    altrimenti metti tutto sotto commento (e non viene visto niente)

    Ora, dato che il tuo è XHTML puoi anche togliere i commenti ed usare solo

    <![CDATA[

    ]]>

    Ma il metodo che ti ho inserito viene validato anche per l'HTML, dato che i commenti // prima delle righe lo nascondono se il CDATA non fa parte della sintassi della pagina (che ha solo XML).

    Spero di essermi spiegato.
    I DON'T Double Click!

  5. #5
    Perfettamente. Grazie della disponibilità.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.