Principale utente con più risposte
passagio dati tra a asp.net e javascript

Domanda
-
Caro forum
Al momento di creare una pagina web,dovrei passare dei dati a javascript, giusto 4
lettere che identificano il browser.
Un metodo potrebbe essere scrivere dei cookie con
Response.Cookies.Add(..),
e poi leggerli in javascript con
document.cookie.toString();
Esiste qualcos' altro ?
Grazie
Rob
Risposte
-
Caro forum
Al momento di creare una pagina web,dovrei passare dei dati a javascript, giusto 4
lettere che identificano il browser.
Un metodo potrebbe essere scrivere dei cookie con
Response.Cookies.Add(..),
e poi leggerli in javascript con
document.cookie.toString();
Esiste qualcos' altro ?
Grazie
Rob
javascript ha già un oggetto client con tutte le info che ti servono:
http://www.w3schools.com/js/js_browser.asp
Come specificato nelle note non esiste uno standard che regoli l'oggetto Navigator, ma è ampiamente supportato da tutti i browser.
Se invece usi JQuery, che è anche meglio, puoi utilizzare questo: http://api.jquery.com/jQuery.browser/
Ciao!
Francesco Milano // .NET & SQL Server Consultant // blog // twitter
- Proposto come risposta Irina Turcu lunedì 13 febbraio 2012 16:17
- Contrassegnato come risposta Irina Turcu lunedì 20 febbraio 2012 12:20
-
Ciao,
Come ti ha detto Francesco puoi conoscere la versione del Browser direttamente lato client con javascript.
Se invece vuoi passare variabili o oggetti complessi puoi seguire diverse strade senza fare inutili chiamate AJAX.
- Usare hidden fields, magari per singoli valori o oggetti non troppo complessi.
- Creare oggetti Javascript nel code behind con JSON.
Per la prima soluzione puoi vedere questo semplice video
Per la seconda, qui trovi un pò di materiale su JSON se non lo conoscessi, puoi seguire diverse strade usare il javascript serializer o creare a manina il tuo oggetto JSON.
Alla fine devi registrare il tutto all'interno di un tag script.In queste pagine trovi due esempi sull'uso del JavascriptSerializer semplice, articolato
Questo un codice di esempio per registrare il tuo script con il Json scritto a manina:
protected void RegisterScript()
{
StringBuilder sb = new StringBuilder();sb.Append(@"<script language='javascript'>");
sb.Append(@"var obj = {nome:'Ezio',cognome:'Santori'};");
sb.Append(@"</script>");
if (!ClientScript.IsStartupScriptRegistered("JSScript"))
{
ClientScript.RegisterStartupScript(this.GetType(), "JSScript", sb.ToString());
}
}
A questo punto nel tuo javascript puoi ottenere il valore che ti serve:
alert(obj.nome);- Modificato Ezio Santori venerdì 10 febbraio 2012 23:07
- Proposto come risposta Marco Siniscalco domenica 12 febbraio 2012 00:53
- Contrassegnato come risposta Irina Turcu lunedì 20 febbraio 2012 12:20
Tutte le risposte
-
Caro forum
Al momento di creare una pagina web,dovrei passare dei dati a javascript, giusto 4
lettere che identificano il browser.
Un metodo potrebbe essere scrivere dei cookie con
Response.Cookies.Add(..),
e poi leggerli in javascript con
document.cookie.toString();
Esiste qualcos' altro ?
Grazie
Rob
javascript ha già un oggetto client con tutte le info che ti servono:
http://www.w3schools.com/js/js_browser.asp
Come specificato nelle note non esiste uno standard che regoli l'oggetto Navigator, ma è ampiamente supportato da tutti i browser.
Se invece usi JQuery, che è anche meglio, puoi utilizzare questo: http://api.jquery.com/jQuery.browser/
Ciao!
Francesco Milano // .NET & SQL Server Consultant // blog // twitter
- Proposto come risposta Irina Turcu lunedì 13 febbraio 2012 16:17
- Contrassegnato come risposta Irina Turcu lunedì 20 febbraio 2012 12:20
-
Ciao,
Come ti ha detto Francesco puoi conoscere la versione del Browser direttamente lato client con javascript.
Se invece vuoi passare variabili o oggetti complessi puoi seguire diverse strade senza fare inutili chiamate AJAX.
- Usare hidden fields, magari per singoli valori o oggetti non troppo complessi.
- Creare oggetti Javascript nel code behind con JSON.
Per la prima soluzione puoi vedere questo semplice video
Per la seconda, qui trovi un pò di materiale su JSON se non lo conoscessi, puoi seguire diverse strade usare il javascript serializer o creare a manina il tuo oggetto JSON.
Alla fine devi registrare il tutto all'interno di un tag script.In queste pagine trovi due esempi sull'uso del JavascriptSerializer semplice, articolato
Questo un codice di esempio per registrare il tuo script con il Json scritto a manina:
protected void RegisterScript()
{
StringBuilder sb = new StringBuilder();sb.Append(@"<script language='javascript'>");
sb.Append(@"var obj = {nome:'Ezio',cognome:'Santori'};");
sb.Append(@"</script>");
if (!ClientScript.IsStartupScriptRegistered("JSScript"))
{
ClientScript.RegisterStartupScript(this.GetType(), "JSScript", sb.ToString());
}
}
A questo punto nel tuo javascript puoi ottenere il valore che ti serve:
alert(obj.nome);- Modificato Ezio Santori venerdì 10 febbraio 2012 23:07
- Proposto come risposta Marco Siniscalco domenica 12 febbraio 2012 00:53
- Contrassegnato come risposta Irina Turcu lunedì 20 febbraio 2012 12:20
-
-
Ciao Rob,
Ho evidenziato le risposte che hai ricevuto, al pensiero che può servire come un riferimento utile per altri membri che magari si sono imbattuti in un caso simile. Se hai più di tempo per esaminare il problema e darci ulteriori feedback, rimaniamo in attesa dei tuoi commenti.
Saluti,
Irina Turcu - Microsoft
Windows 8 parla la tua lingua?
Questo contenuto è distribuito “as is” e non implica alcuna responsabilità da parte di Microsoft. L'azienda offre questo servizio gratuitamente, allo scopo di aiutare gli utenti e approfondire la loro conoscenza dei prodotti e tecnologie Microsoft.