Visualizzazione dei risultati da 1 a 5 su 5

Discussione: problema con apostrofo

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786

    problema con apostrofo

    salve,

    ho un problema, vado a recuperare un testo tramite ajax,
    tutto funziona bene.

    Ma se c'è un apostrofo mi ritorna anche uno \

    es.

    l'aquila

    mi torna

    l\'aquila

    come mai ?

    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Come mai puoi saperlo solo tu, visto che non conosciamo il linguaggio server ne tanto meno com'è sviluppato. Nel senso che potrebbe essere quest'ultimo che aggiunge la barra (delimitatrice) altrimenti il javascript riconoscerebbe l'apice come delimitatore di stringa.
    Esempio:
    stringa_Senza_Apice = 'ciao mondo' (gli apici sono delimitatori)
    stringa_Con_Apice = 'l[\]'altro giorno sono andato....' (se non si metteva la barra la frase sarebbe troncata alla l con errore.)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    Succede anche in PHP se recuperi da una query tramite variabili e un po' di capriole; sì, le aggiunge il server.
    Per spiegarti tutta la faccenda dovrei fare degli esempi di codicie ora non ho tempo.
    Ci ho visto arenarsi tanta gente, non ti preoccupare.
    Morale della favola, le vuoi levare in sede di visualizzazione?

    In PHP ci sono stripslashes() e stripcslashes()

    In JavaScript bisogna fare attenzione con .replace(/\\/g, "") perché ti andrebbe a togliere quelle backslash che potrebbero esser parte del testo.
    Senza g esegue il replace solo sul primo carattere che incontra; con g su tutti.

  4. #4
    Utente bannato
    Registrato dal
    Jan 2009
    Messaggi
    152
    codice:
    <html><head>
    <script type="text/javascript">
    
    var original = "L' inverno a L'Aquila";
    var added    = original.replace(/'/g, "\\\'");   //simula il server-side addslashes
    
    function setup(){
    document.getElementById("fld1").value = original;
    document.getElementById("fld2").value = added;
    document.getElementById("fld3").value = added.replace(/\\\'/g, "'");
    }
    window.onload=setup
    
    </script>
    </head><body>
    
    <input id="fld1" size="80" style="font-family: monospace;">
    
    <input id="fld2" size="80" style="font-family: monospace;">
    
    <input id="fld3" size="80" style="font-family: monospace;">
    
    </body>
    </html>

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,786
    grazie !
    [Scambio Links a Tema] Contattatemi in Privato x + Info.

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.