cómo pasar parámetros a una función de JavaScript usando puntales taglib?
-
18-09-2019 - |
Pregunta
-
Tengo un
updateHiddenField(value)
función javascript que consigue un valor como parámetro y luego establece este valor como el valor de un campo oculto. -
Tengo un
flight
JavaBean con parámetrosid
yflightNo
.
Problema: ¿Cómo puedo pasar el parámetro de id
JavaBean flight
a la updateHiddenField(value)
función js cuando se utiliza la etiqueta <html:link>
(puntales)
<html:link href="javascript:updateHiddenField(idToPassHere)"><bean:write name="flight" property="flightNo"/></html:link>
Gracias Umar
Solución
<html:link href="javascript:updateHiddenField(<s:property value="id"/>)"><bean:write name="flight" property="flightNo"/></html:link>
Asumiendo que su importación es taglib <% @taglib prefix="s" uri="/struts-tags" %>
Otros consejos
No parece que haces para estar ganando algo mediante el uso de <html:link>
sobre <a>
- por lo que sería el cambio más fácil:
<a href="javascript:updateHiddenField(<bean:write name="flight" property="id"/>)">
<bean:write name="flight" property="flightNo"/>
</a>
De forma más general que sugeriría añadir detectores de eventos a los objetos DOM, en lugar de la mezcla de marcas y funcionalidad.