Estoy haciendo una pagina que tiene una herramienta de administracion o content management basado en popups, es decir cuando el usuario hace click en "editar" un pop up aparece con un formulario en donde el administrador puede escribir, por ejemplo, un nuevo texto. El sistema funciona si utilizo una nueva pagina .jsp con el formulario, pero eso significa un numero grande archivos .jsp y bastante engorroso para el usuario, es por eso que decidi utilizar los pop ups, que en realidad son div que estan ocultos con .css y que se muestran al ejecutarse un javascript.
El problema es que el javascript no me esta leyendo desde la base de datos por que necesita unos parametros para saber que linea de la bd debe leer.
suena complicado asi que les coloco un poco de codigo por si ayuda:
De esta manera funciona (enviando al administrador a una nueva pagina con el formulario)
Código:
<s:url action="companyCrud!input" id="url" escapeAmp="false"> <%-- AQUI RECOGO LOS PARAMETROS --%> <s:param name="regionId" value="%{regionId}"/> <s:param name="categoryId" value="%{categoryId}"/> <s:param name="company.id" value="id"/> </s:url> <a href="<s:property value="#url"/><img border="0" src="/Fixafesten/images/change.png"></img></a>
Esta es la version con javascript:
Código:
<s:url action="companyCrud!input" id="url" escapeAmp="false"> <s:param name="regionId" value="%{regionId}"/> <s:param name="categoryId" value="%{categoryId}"/> <s:param name="company.id" value="id"/> </s:url> <a href="javascript:toggleLayer('companiesAdmin');"><img border="0" src="/Fixafesten/images/change.png"></img></a> <!-- EL DIV OCULTO --> <div id="companiesAdmin"> <div id="closeButton"> <input type="image" name="reset" src="/Fixafesten/images/admin/close.png;" value="" onclick="javascript:toggleLayer('companiesAdmin');" /> </div><br /> <s:form cssClass="createNewUnit" cssStyle="margin-top: 20px;" action="companyCrud!createCompany" method="post" enctype="multipart/form-data"> <img alt="Picture" src="ShowImage.action?id=<s:property value="%{company.id}"/>&imageType=companyImage"/><br> <p class="adminForms">Bild<br> <s:file name="image" size="35"/><br></p> <p class="adminForms">Namn<br> <s:textfield name="company.name" size="35" value="%{company.name}"/><br></p> <p class="adminForms">Url<br> <s:textfield name="company.url" size="35" value="%{company.url}"/><br></p> <p class="adminForms">Beskrivning<br> <s:textfield name="company.description" size="35" value="%{company.description}"/><br></p> <p class="adminForms">Region<br> <s:select name="company.companyRegionId.id" value="%{company.companyRegionId.id}" headerKey="-1" headerValue="-- Välj --" list="companyRegions" listKey="id" listValue="name"/><br></p> <p class="adminForms">Kategori</span><br> <s:select name="company.companyCategoryId.id" value="%{company.companyCategoryId.id}" headerKey="-1" headerValue="-- Välj --" list="companyCategories" listKey="id" listValue="name"/><br></p> <s:hidden name="company.id" value="%{company.id}"/> <s:submit cssStyle="margin-left: 13px;" value="Spara"/> </s:form> </div>
Esete es el strut que contiene la accion:
Código:
Mi pregunta es: <action name="companyCrud" class="com.fixafesten.action.CompanyAction" method="input"> <result name="success" type="redirect-action">listCompanyByCategoryAndRegionAdmin</result> <result name="input">/pages/admin/companyForm.jsp</result> </action>
Como lo hago para introducir esto:
Código:
aqui: <s:param name="regionId" value="%{regionId}"/> <s:param name="categoryId" value="%{categoryId}"/> <s:param name="company.id" value="id"/>
Código:
<a href="javascript:toggleLayer('companiesAdmin');"><img border="0" src="/Fixafesten/images/change.png"></img></a>
Cualquier idea me servira
Gracias