Die übergabe mehrerer Parameter über einen <s:url/> Struts2-tag
Dieser code senden soll, zwei Parameter, um die struts-Aktion:
<s:url id="loadReportsForAPageInitial" value="/loadReportsForAPage.action" >
<s:param name="reportsCount_hidden" value="3"></s:param>
<s:param name="pageNumber_hidden" value="1"></s:param>
</s:url>
<sj:div href="%{loadReportsForAPageInitial}">
</sj:div>
das problem wird nur der erste parameter ist-Wert gesendet, um die struts-Aktion und das zweite ist, null! Ich änderte den Ort der beiden Parameter, und wieder nur die erste war gut.
Ist es möglich, übergeben Sie mehr als einen parameter via s:url-tag?
UPDATE
dies ist, wie der url-tag gerendert:
<script type='text/javascript'>
jQuery(document).ready(function () {
var options_div_1179027906 = {};
options_div_1179027906.jqueryaction = "container";
options_div_1179027906.id = "div_1179027906";
options_div_1179027906.href = "/FAP/loadReportsForAPage.action";
options_div_1179027906.hrefparameter = "reportsCount_hidden=3&pageNumber_hidden=1";
jQuery.struts2_jquery.bind(jQuery('#div_1179027906'),options_div_1179027906);
});
- Wie funktioniert die url zu Rendern? Beachten Sie auch, dass mit "- id") für die url-var ist veraltet.
- Ich habe das render-Ergebnis da oben, hat das problem nichts zu tun haben mit der "&" am Ende des ersten parameter?
- Sie sind eigentlich die falsche Frage gestellt-ja, Sie kann passieren mehr als einen parameter über die
<s:url>
tag, aber die eigentliche Frage hinsichtlich der<sj:div>
tag und wie Sie verarbeitet die Parameter--wie es aussieht ist es vorbei. Ich denke, Sie sind richtig, dass dies das Problem ist. - Es scheint also So zu sein, Struts2jQuery plugin bug, interessant!
- Weiß nicht ob es ein bug oder beabsichtigte Verhalten; ich würde überprüfen Sie die Quelle zuerst, um zu sehen, wie es füllt
hrefparameter
. In der Zwischenzeit, es könnte gearbeitet werden, um in einer Vielzahl von Möglichkeiten, indem Sie minimal Parsen/splitten von einem einzigen parameter, wenn die Quelle liefert keine Anhaltspunkte. - gut, ja, ich habe einen einzigen Komma delimitered param, um die Arbeit weitergehen. Ich denke, ich würde besser beraten mit dem plugin-Entwickler.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Deaktivieren Sie die URL-escape-Verhalten mit
escapeAmp="false"
Attribut. Dies ist standardmäßig aktiviert, so dass URL-parameter&
machen wird&
. Dies wird Ursache ein problem beim Lesen des Parameterwerts mit den parameter-Namen.request.getParameter("amp;pageNumber_hidden")
escapeAmp
und setzen Sie den Wert false als Teil der
<s:url>
tag (Empfohlen)