struts2: update zweites wählen Sie basierend auf dem ersten Wert auswählen, der mit javascript und jquery

Arbeite ich an einer struts2 Projekt, wo ich 3 html-select-Steuerelemente jeweils einen abhängig von der vorherigen Auswahl ab. Sagen, dass die erste Option ist für Land, zweitens für den Staat, die Dritte für die Stadt. Die Liste der Optionen, die in dem Staat wählen, würde gefiltert werden, um nur die Zustände in diesem Land und so weiter. Durch einige andere Einschränkungen bin ich mit der grundlegenden html-select-Steuerelement anstelle von struts2 ist. Hier ist ein Beispiel dafür, wie ich bin derzeit bevölkern wählen Sie:

<select id="stateSelect"  name="selectedState">
<s:iterator value="#session['myModel'].states" status="itr">
     <option value="<s:property value="code"/>">
      <s:property value="label"/>
</option>
</s:iterator>
</select>

Ich denke, dass das, was ich tun müssen, ist onchange-Ereignis ein ajax-Aufruf zum abrufen der Liste der "Staaten" auf der Basis der gewählten "Landes". Die Fragen sind:

1. wie kann ich das ajax-call mit jquery?

2. was brauche ich, um zu gehen, wie die url für den ajax-call? einfach den Namen der Aktion aus?

3. wie kann ich analysieren, die Ergebnisse zurück? Aus java-code, den ich zurückkehren kann, eine Liste von "Staat" Objekte "code" und "Bezeichnung" und andere Eigenschaften. Wie kann ich analysieren diese Liste in javascript und generieren Sie die richtigen Optionen für das select-tag?

  • Ich habe dies getan, bevor. Ich würde tun, was jonathan empfiehlt die Verwendung der struts2-json-plugin (es ist ziemlich einfach zu bedienen), Aktionen, die verwenden es wieder einen json-string. Wenn Sie chrome verwenden, sehen Sie rechts auf dem Bildschirm, mit firefox sehen Sie es mit firebug. Mit json in der hand, die Sie wahrscheinlich verwenden die jQuery $.getJSON (), die Katze z.B. auf dieser Seite haben mir sehr geholfen beim Start von: api.jquery.com/jQuery.getJSON können Sie kopieren, in eigene Seite, und es wird die json verwenden, und die cat-Bilder aus dem flimmern web-site, so dass Sie die Arbeit mit json, ohne einen server.
InformationsquelleAutor Johnny | 2011-08-10
Schreibe einen Kommentar