124 messaggi dal 20 marzo 2003
Ciao,
esistono classi per gestire gli script javascript ?
Esempio : voglio costruire a runtime uno script da mandare sul client. Nello script devo usare delle stringhe derivanti da una fonte dati che, in quanto stringhe, possono contenere caratteri che danno noia allo script.
Speravo esistesse una classe che parserizzasse la stringa prima di essere inserita in un javascript come avviene, ad esempio, quando si setta l'InnerText in un nodo Xml.

Non ho ancora trovato nulla a riguardo e non mi va di fare i soliti metodi di replace, lunghi e poco efficaci considerando che se ci si dimentica di considerare la casistica di un carattere lo script già non è più corretto sintatticamente.

Grazie
per registrare javascript nella pagina esisteno diversi metodi che mette a diposizione la classe Page, come ad esempio

RegisterClientScriptBlock.

che tipo di troblemi hai più precisamente?

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
3.165 messaggi dal 06 settembre 2002
Contributi | Blog
Ciao,

Per iniettare un javascript in una pagina lato server puo usare il metodo RegisterClientScriptBlock della clase page. Per quanto riguarda la pulizia di caratteri particolari puoi usare o il metodo Server.Encode(..) ma non so se fa al caso tuo, oppure una RegularExpression. HTH.
.

Nothing can be born from hartred

Stefano (SM15455) Mostarda
http://blogs.aspitalia.com/SM15455
Rome Italy
124 messaggi dal 20 marzo 2003
Grazie innanzitutto

Posto un esempio per individuare meglio il mio caso :

string myVar = "cvxcvx'xcvxcv";
string js = "alert('pippo'" + myVar + "');" ;

la variabile myVar è una stringa che può contenere caratteri speciali, in particolar modo l'apice singolo verrebbe visto da JavaScript come fine stringa con tutto quello che ne consegue.
124 messaggi dal 20 marzo 2003
nostromo ha scritto:
per registrare javascript nella pagina esisteno diversi metodi che mette a diposizione la classe Page, come ad esempio

RegisterClientScriptBlock.

che tipo di troblemi hai più precisamente?

Il problema l'ho postato, comunque il metodo che mi hai consigliato lo conosco e l'ho usato diverse volte. E' molto comodo ma come leggerai dal mio esempio, non mi risolve il problema.
letto :) puoi usare una regex per mettere \ davanti all'apice

e dovrebbe andare tutto ok :)

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
124 messaggi dal 20 marzo 2003
è la soluzione che ho adottato al momento :)
però non mi piace perchè non sono sicura che solamente l'apice dia noia all'interno di un testo in JS....
non sono espertissimo di javascrip ma se fai l'escape con \ o usi la funzione escape javascrip di dovresti essere al riparo da tutto :)


ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.