5 Stimmen

Struts2 JQuery wie man onchange ajax tun

Sagen wir, ich habe sj:autocompleter wie folgt:

<sj:autocompleter  id="idDistributor" 
name="idDistributor" 
list="%{idDistributorList}"  label="ID
Distributor"  indicator="indicator" />

wenn der Wert geändert wird, möchte ich den Detailwert an ein anderes Textfeld weitergeben, wie folgt:

<sj:textfield label="Nama Distributor" id="namaDistributor" name="namaDistributor" required="true"/>

dessen Wert von der Struts-Back-Bean (FormAction) abgerufen wird.

Wie könnte ich das tun?

Vielen Dank im Voraus.

Herr K.

7voto

Pat Punkte 24608

Das Folgende sendet den Wert des Autovervollständigers an Ihre Aktion und setzt den Wert von #namaDistributor mit der zurückgegebenen Zeichenkette:

$('#idDistributor').change(function(){
    // Make the ajax request
    $.ajax({
        url: 'path/to/back-bean.action',
        data: "autocompleterValue=" + $(this).val(),
        dataType: "json",
        success: function(data) {    
            // Set the inputs from the json object            
            $('#namaDistributor').val(data.distributor);
            $('#namaPrice').val(data.price);
        }
    });
});

Sie können mehr über die $.ajax()-Methode hier . Das obige json-Beispiel geht davon aus, dass Ihre Aktion ein json-Objekt mit dem folgenden Format erstellt:

{"price": "123.40", "distributor": "XYZ Inc."} 

Sie können mehr über die Verwendung von json mit Struts2 lesen in dieser Artikel .

2voto

Johannes Punkte 2070

Können Sie dies mit onSelectTopics tun.

Abonnieren Sie ein Thema wie dieses:

<script>
$.subscribe('autocompleteSelect', function(event, data) {
  var ui = event.originalEvent.ui;
  $('#namaDistributor').val(ui.item.value);
});
</script>

und bei Ihrem Autovervollständiger

<sj:autocompleter  id="idDistributor" 
name="idDistributor" onSelectTopics="autocompleteSelect"
list="%{idDistributorList}"  label="ID
Distributor"  indicator="indicator" />

Ein Beispiel hierfür finden Sie in der Struts2 jQuery Plugin Schaufenster

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X