Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    54

    Codifica caratteri speciali

    Ciao a tutti, mi chiedevo se sia possibile creare uno script in javascript che mi cerchi all'interno di tutta la mia pagina web se sono presenti dei caratteri speciali e me li sostituisca con il loro codice di codifica, mi spiego meglio:
    ad esempio se nella mia pagina ci sono dei caratteri tipo la "ì" vorrei che il codice me li sostituisca con "& igrave;" in maniera di non avere spiacevoli errori di codifica nella mia pagina web.
    Ho visto girando un pò per il vostro sito che in asp si può fare, leggendo questo http://aspnet.html.it/script/vedi/40...iali-in-html/.

  2. #2
    in php abbiamo http://www.php.net/manual/en/function.htmlentities.php per asp non so ma basta un manuale asp (mi pare sia HtmlEntityDecode ?)

    Non sono cose che si fanno lato client queste

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    L'esempio mostra solo come effettuare un replace dei caratteri speciali su un determinato testo di input, non effettua nessuna ricerca nella pagina. Se sai qual'è il testo sui cui devi effettuare i controlli per la codifica/decodifica puoi farlo benissimo anche in javascript. Se la pagina la costruisci lato server allora fai i vari controlli direttamente li come mostrato nell'esempio.

    p.s. oggi arrivi sempre un attimo prma

  4. #4
    Originariamente inviato da Vindav

    p.s. oggi arrivi sempre un attimo prma
    e c'ho la mattinata libera :-)

    Se proprio lo vuol fare lato client gli tocca inventarsi una funzione, e poi sai che inferno dievnta sto thread quando ci chiederà come scrivere dentro i nodi :-) per fortuna che c'è il deprecato innerHTML

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    54
    Ecco.. il problema è che io sto facendo delle pagine in jsp e richiedo degli input da form tramite request, che vengono poi rielaborate e stampate nelle pagine successive.
    Di conseguenza, io non so quali caratteri saranno presenti nella mia pagina web dato che li chiedo all'utente.. qualcosa in javascript che sostituisca ad esempio tutti i caratteri "à" nella pagina non esiste?
    Chiedo a voi perchè di javascript non ne so molto so molto di jsp, ma di javascript ho quasi sempre e solo fatto copia e incolla, oppure ho utilizzato cose già fatte come JQuery

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    fallo in java dentro le jsp, dalla request recuperi i valori imeessi dall'utente nella pagina precedente e poi fai il replace dei caratteri speciali.

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    54
    non ci avevo proprio pensato, ma in questa maniera volendo potrei anche eliminare javascript per risolvere questo problema. Potrei dividere la stringa presa dalla request in un array tramite jsp settando come caratteri di divisione quelli speciali, reincollare insieme tutto l'array con i caratteri sostituiti .. il solito vecchio metodo insomma XD
    in javascript però in teoria dovrebbe essere tutto molto piu facile giusto? basta una funzione con replace che richiamo sulla stringa della request ?

  8. #8
    e certo che puoi eliminare javascript: è quello che ti stiamo dicendo, che queste cose si fanno lato server. Quanto a come, se non lo sai c'è anche il forum java, figurati se librerie native pazzesche come java non hanno una qualche funzione per trasformare in entities i caratteri. Basta un manuale j2se6 penso, o sennò un manuale jsp, che senz'altro avrai.

    ps in javascript sarebbe tutto molto più difficile, non molto più facile, perchè javascript non ha delle loibrerie native dove risiedano le tavole di trasformazione necessarie, e te le dovresti creare da te

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    dici di sapere tutto sulle jsp ma non mi sembra affatto. Dalla request puoi recuperare i singoli campi input della pagina precedente, quindi non ti serve nessun array...
    Nella pagina precedente hai n campi di input con nomi prova1,prova2 ecc...

    ti basta fare:
    String prova1 = request.getParameter('prova1')
    String prova2 = request.getParameter('prova2')
    ecc...

    poi applichi alle variabili la decodifica dei caratteri speciali o effettui un replace:
    prova1.replace(char,char);

    Non capisco perche tiri di mezzo gli array cerca di spiegarti meglio.

    p.s. come gia detto da trueLies puoi farti spostare nella sezione java

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    54
    No non hai proprio capito cosa intendo, io intendo la funzione split , non intendo traserire le request direttamente in un array.

    Io intendo avere un form con dei campi di testo, ogni campo di testo finisce in delle stringhe tramite request nella pagina target. Poi per sostituire ad esempio che ne so... la "ì" splitto la stringa in un array per questo carattere e la incollo tutta insieme sostituendo quel carattere, esempio pratico:

    codice:
    String descrizione=request.getParameter("descrizione");
    String[] arrdesc = descrizione.split("ì");               
                      String descri="";              
                       if(arrdesc.length>0)                 
                   for (int i = 0; i < arrdesc.length; i++) {                                                      descri+=arrdesc[i];                     
                    if(i+1<arrdesc.length) descri+="& igrave;";                                    }                             
        descrizione=descri;
    EDIT: & igrave; lo scrivo staccato se no viene fuori la ì ,

    e continuo a splittarla per tutti i caratteri speciali che trovo... però in questo caso dovrei fare una marea di cicli, ma non ricordo se lo split si può fare con più di un carattere

    Comunque si, meglio spostare il thread nella sezione java a questo punto

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.