Hacemos una verificación completa cada tutorial en nuestro sitio web con el objetivo de mostrarte siempre la información veraz y certera.
Solución:
alert("$variable");
o
alert("<%=var%>");
o ejemplo completo
Nota: desinfecte la entrada antes de renderizarla, puede abrir muchas posibilidades XSS
La forma más limpia, que yo sepa:
- agregue su variable JSP a los datos de un elemento HTML-* attribute
- luego lea este valor a través de Javascript cuando sea necesario
Mi opinión con respecto a las soluciones actuales en esta página SO: leer valores JSP “directamente” usando java scriplet dentro del código javascript real es probablemente lo más repugnante que podría hacer. Me dan ganas de vomitar. ja ja. En serio, trata de no hacerlo.
La parte HTML sin JSP:
Here is your regular page main content
La parte HTML cuando se usa JSP:
Here is your regular page main content
La parte de javascript (usando jQuery por simplicidad):
Y aquí está el jsFiddle para ver esto en acción http://jsfiddle.net/6wEYw/2/
Recursos:
- Datos HTML 5-* attribute: https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Using_data_attributes
- Incluir javascript en el archivo html Incluir el archivo JavaScript en HTML no funcionará como
- CSS selectors (also usable when selecting via jQuery) https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Selectors
- Get an HTML element attribute via jQuery http://api.jquery.com/attr/
Assuming you are talking about JavaScript in an HTML document.
You can't do this directly since, as far as the JSP is concerned, it is outputting text, and as far as the page is concerned, it is just getting an HTML document.
You have to generate JavaScript code to instantiate the variable, taking care to escape any characters with special meaning in JS. If you just dump the data (as proposed by some other answers) you will find it falling over when the data contains new lines, quote characters and so on.
The simplest way to do this is to use a JSON library (there are a bunch listed at the bottom of http://json.org/ ) and then have the JSP output:
Esto le dará un objeto al que puede acceder como:
myObject.someProperty
en el JS.
Más adelante puedes encontrar las interpretaciones de otros sys admins, tú incluso puedes dejar el tuyo si lo crees conveniente.