Ich habe ein Problem gestoßen, als ich heute gearbeitet habe. Der Firmenname auf der Seite wird nach Auswahl des Projektnamens mit AJAX gelesen. JQtransform wird jedoch aufgerufen, nachdem die Seite geladen wurde, sodass das Dropdown-Feld des Firmennamens nicht die neuesten Daten anzeigen kann.
<link rel = "styleSheet" href = "$ {ctx} /jqtransformMplugin/jqtransform.css" type = "text/css"> </link> <script type = "text/javaScript" src = "$ {ctx} /jqtransformMplugin/jquery.jqtransform.js"> </script>
<Script type = "text/javaScript">
$ (function () {
$ ('Form'). JQtransform ({imgPath: 'Images/jQueryFormImg/'});
});
</Script>
Mit Firebug können Sie feststellen, dass die Daten tatsächlich gespleißt wurden, aber das Formular als JQtransform -Methode nach dem Laden der Seite genannt wurde und die UL -Daten in JQtransformSelectWrapper nicht aktualisiert wurden. Nachdem ich lange nachgedacht hatte, beschloss ich, die UL auf einfache und grobe Weise zu aktualisieren.
Funktion companyajax (proid) { $ .ajax ({{{
Typ: "Post",
URL: "$ {pageContext.request.contextPath} /recordsearch/ajax/getCompanyajax.do",
Datentyp: "JSON",
Daten: {proid: proid},
Erfolg: Funktion (jSondata) {
var tmp = '';
tmp+= '<select id = "centerId" name = "centerid" onchange = "comchange ()" name = "centerid">';
// $ ("#Centerid"). leer (); tmp+= '<option value = "">-bitte auswählen-</option>';
für (var i = 0; i <jSondata.length; i ++) {
tmp+= '<option value = "'+jSondata [i] .CenterId+'">'+jSondata [i] .Centername+'</option>';
}
tmp+= '</select>';
$ ("#CenterID"). Parent (). REMET ();
$ ("#Comlable"). Nach (TMP);
$ ("#CenterID"). JQtransSelect ();
}
});
}
Haha, nachdem Ajax die Unternehmensdaten abfragen, löschen Sie die von JQTransform generierte Auswahl-Div-bezogene DIV, dann die SELCT und initialisieren Sie dann die Auswahl erneut. Die Methode ist dumm, aber lassen Sie sie zuerst verwenden, und es gibt in Zukunft eine bessere Möglichkeit, darüber zu sprechen.
Ist es nicht cool? . Haha, in der Tat ist JQtransform mächtiger. Wenn Sie in Zukunft ähnliche Effekte verwenden müssen, können Sie sich darauf verweisen.