Encontré un problema cuando estaba trabajando hoy. El nombre de la compañía en la página se lee utilizando AJAX después de seleccionar el nombre del proyecto. Sin embargo, se llama a JQTransform después de cargar la página, por lo que el cuadro desplegable Nombre de la compañía no puede mostrar los últimos datos.
<link rel = "stylesheet" href = "$ {ctx} /jqtransformmplugin/jqtransform.css" type = "text/css"> </ink> <script type = "text/javaScript" src = "$ {ctx} /jqtransformmplugin/jquery.jqtransform.js"> </script>
<Script type = "text/javaScript">
$ (function () {
$ ('Form'). Jqtransform ({imgpath: 'Images/jQueryFormimg/'});
});
</script>
Usando Firebug, puede ver que los datos se han empalmado, pero Form ha llamado el método JQTransform después de cargar la página, y los datos UL en JQTransformSelectWrapper no se han actualizado. Después de pensar durante mucho tiempo, decidí actualizar la UL de una manera simple y cruda.
function CompanyAJAX (PROID) { $ .AJAX ({
Tipo: "Publicar",
URL: "$ {PageContext.Request.ContextPath} /recordSearch/AJAX/GETCOMPANYAJAX.DO",
Tipo de datos: "JSON",
Datos: {proid: proid},
éxito: function (jsondata) {
var tmp = '';
tmp+= '<select id = "CenterId" name = "CenterId" onChange = "COMCHARN ()" name = "CenterId">';
// $ ("#CenterId"). Vaciento (); tmp+= '<option value = "">-Seleccione-</opción>';
para (var i = 0; i <jsondata.length; i ++) {
tmp+= '<option value = "'+jsondata [i] .centerid+'">'+jsondata [i] .centername+'</option>';
}
tmp+= '</elect>';
$ ("#CenterId"). Parent (). Remove ();
$ ("#Comlable"). After (TMP);
$ ("#CenterId"). Jqtransselect ();
}
});
}
Jaja, después de que Ajax consulte los datos de la compañía, elimine el DIV relacionado con Select generado por JQTransform, luego emplome el Selct y luego reinicialice la selección. El método es estúpido, pero usémoslo primero, y hay una mejor manera de hablar de ello en el futuro.
¿No es genial? . Jaja, de hecho, JQTransform es más poderoso. Si necesita usar efectos similares en el futuro, puede consultarlo.