2013-02-26 14 views
7

Ho nelle mie classi java variabili statiche CONSTANT_1, CONSTANT_2 ...
Qual è il modo migliore per condividere queste costanti con le mie funzioni javascript o se esiste un plugin JQuery per questo.come condividere costanti tra Java e Javascript

Fino ad ora l'unica soluzione a cui riesco a pensare, è una chiamata ajax all'inizio, per inviare queste variabili statiche al client.

Grazie

+0

Affrontare lo stesso problema c'è venuta con la stessa soluzione. – benzonico

+0

Perché solo chiamata AJAX? È possibile inviare dati dal server al client nella risposta HTML e utilizzarli in JS! – Apurv

+0

usa le pagine JSP. – asifsid88

risposta

3

Io non so se questo il modo migliore o no, ma funziona.

var constant1=<%=class.CONSTANT_1%>; 
+0

Non ha detto che stava usando JSP. In realtà, non stava dicendo quello che stava usando, quindi ogni risposta è quasi inutile. – Cubic

+0

Ha menzionato come l'Ajax in modo che possiamo prendere in considerazione la risposta di cui sopra :-) – Samy

+0

In realtà sto usando JSP, ma ho evitare di mescolare jsp con js nello stesso file. –

0

Ho affrontato questo problema prima. quello che ho fatto è semplicemente ho dichiarato il campo di input hidden a cui posso accedere dal lato server e impostare il suo valore con quello che voglio.

<input type="hidden" runat="server" id="hiddenInput" /> 

quindi utilizzando il linguaggio di programmazione (io uso C#):

hiddenInput.Value = ValueOnServerSide; 

Poi utilizzando jQuery ottengo il valore di questo ingresso sul lato client.

$("[id$='hiddenInput']").val(); 
1

è possibile impostare questa variabile statica in un campo nascosto, quindi è possibile accedervi da JavaScript utilizzando questo campo nascosto

<input type="hidden" value="<your static variable>" id="staticVariable" /> 
<script type="text/javascript"> 
    function getStaticField(){ 
     return document.getElementById("staticVariable").value; 
    } 
</script> 
0

È possibile utilizzare chiamate AJAX per ottenere il valore delle costanti se non volete mantenere ricaricare la pagina. Se si sta bene con il valore unico aggiornamento sulle aggiornamento si può fare quello Sainath ha detto, in questo modo non si stanno facendo inutili chiamate AJAX:

var constant1=<%=class.CONSTANT_1%>; 
Problemi correlati