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

    Replace da bicchied d'acqua

    Mi perdo in un bicchier d'acqua ma, come faccio a non far fallire questo 'confirm':
    codice:
    if (confirm("Stai eliminando la pagina \'"+titolo+"\'"+avviso+". Sei sicuro?"))
    nel caso che titolo contenga degli apici o delle virgolette?

    Grazie mille

  2. #2
    Non dovrebbe fallire, è probabile invece che l'errore sia in una riga precedente dove hai settato la variabile titolo.
    Per fare l'escape delle virgolette basta mettere davanti a ogni virgoletta contenuta nella stringa un backslash:
    codice:
    var test = "abdbk\"\"fsfdgf";

  3. #3
    Ok il problema è qua
    codice:
    ');">Elimina
    In pratica devo rimuovere sia gli apici singoli che le virgolette (altrimenti mi spezza la stringa oppure il tag html).

    Come devo metterli perchè non dia errore se ho delle virgolette?

    Con ASP faccio la replace ma non capisco come andrebbe messo:
    codice:
    Replace(  replace(Rs("Titolo"),"'","\'")  , """", "\""")
    (che in ASP sostituisce " con \")
    ma non pare funzionare.

    Dovrebbe essere così?
    codice:
    Elimina
    Non so se è possibile visto che le virgolette comunque rompono il tag, no?

    Grazie....

  4. #4
    Apparte il fatto che a necessitare di escape sono le virgolette singole, per usare le virgolette doppie puoi scrivere al posto di " "
    Elimina

  5. #5
    Le virgolette continuano a spezzare però quelle del tag 'href'.

    Non risolve il problema.

    Ho provato a sostituirlo con l'entità HTML " e funziona però

    Ma Javascript teoricamente non supporta le entità HTML, no?

  6. #6
    Avevo scritto sostituisci al posto di " ", peccato che essendo questa una pagina html l'entità mi è stata interpretata
    Cmq si, le supporta, anche se è possibile usare al loro posto entità esadecimali.

  7. #7
    Azz ecco cos'era

    Comunque non sono convinto del supporto delle entità perchè facendo
    codice:
    <script>alert("perch&amp;egrave;");</script>
    mi scrive "perch&amp;egrave;" e non "perchè" :master:

  8. #8
    Beh, la finestra dell'alert non &egrave; un browser, quindi NON interpreta le entit&agrave;.


    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  9. #9
    Ah

    Ma l'alert allora... che diamine è?

    E come mai invece in una 'confirm' non mi dà il medesimo problema?

  10. #10
    In realtà non è javascript a interpretare le entità, l'unico motivo per cui vengono interpretate è che sono contenute in un attributo href ( chiedo scusa per la baggianata precedente ).
    Infatti se metti il confirm dentro un tag script come hai fatto per l'alert le entità html non vengono interpretate.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.