Frage

Ich entwickle die Anwendung mit Spring Web MVC.

Zum Anzeigen von Zweck verwende ich die DisplayTag -Bibliothek.

Hier ist der Code dafür:

<display:table uid="intf" name="${model.interfacesList}" id="interfacesList"  pagesize="5">

  <display:column property="id" title="ID" />
  <display:column title="Name" property="name"/>
  <display:column title="IPAddress" property="ipAddress"/>
  <display:column title="Network Mask" property="networkMask"/>
  <display:column title="Edit" media="html" style="text-align:center;" >
  <a  href="javascript:submitForm();"><span> <img src="/MailServerV2/images/Btn_edit.gif"/> </span></a>
   <input type="hidden" id="id" value="${intf.id}" name="id"/>
   <%--<input type="hidden" id="id" value="${model.interfacesList.id}" name="id"/>--%>                                                                                                         
</display:column>

</display:table>

Zum Zeitpunkt des Sendens von Formular verwende ich GET -Methode.

In $ {intf.id} Fall: Ich erhalte ID als leer ('') Wert.

in $ {model.interfacesList.id} Fall: Ich bekomme

java.lang.NumberFormatException: For input string: "id"

Kann mir bitte jemand sagen, wie ich den ausgewählten ID einer bestimmten Zeile versteckt übergeben kann?

Danke im Voraus.

War es hilfreich?

Lösung

verwenden

<input type="hidden" id="id" value="${interfacesList.id}" name="id"/>

Andere Tipps

Sie können eine Funktion in Ihrem DisplayTag -Wrapper erstellen, die die HTML -Ausgabe erzeugt und auf die Anforderungsparameter zugreifen. (Angenommen, die ID befindet sich in der Anfrage, woher kommt es?)

HttpServletRequest request = (HttpServletRequest)getPageContext().getRequest();

int lId = request.getParameter("id");
...
out.append("... type='hidden' id='lId' ...);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top