UDA-EJIE / udaRUP

RUP components repository
Other
13 stars 10 forks source link

Problemas operación DELETE (v.3.6.0) #143

Closed unaimartinez closed 5 years ago

unaimartinez commented 5 years ago

Hola,

he identificado un par de problemas asociados a la operación de borrado de un registro del filtro de un componente Datatable. Son los siguientes:

Problema 1

Al pulsar el botón "Eliminar" de la botonera del componente Datatable, no se realiza la llamada ajax para borrar el registro. Cuando se pulsa el botón eliminar se ejecuta la función "_deleteAllSelects", la cual ejecuta a su vez "_callSaveAjax".

_callSaveAjax('DELETE',dt,'',idRow,false,ctx.oInit.formEdit.detailForm,'/'+row);

En esta función se realiza el ajaxSubmit del formulario en la siguiente línea de código.

ctx.oInit.formEdit.idForm.rup_form('ajaxSubmit',ajaxOptions);

Y a su vez en el ajaxSubmit se realiza una validación del formulario

$self.valid()

En este punto en caso de tener reglas de validación asociadas al datatable, al ejecutarse la validación del formulario interpreta que el formulario no es correcto y no realiza la llamada. Entiendo que en el caso de borrado de un registro no es correcto que se realice la validación del formulario. Por otro lado, tampoco tiene sentido realizar un "ajaxSubmit" que envía todo el formulario, ya que el borrado no lo requiere.

Problema 2

Por otro lado mi formulario de detalle es de tipo "multipart-data", ya que se requiere el upload de ficheros. Cuando se elimina un registro, en vez de ejecutar la llamada ajax de tipo "DELETE", ejecuta una llamada de tipo "POST" lo que no es correcto.

Un saludo.

hmartinez85 commented 5 years ago

Buenos días dentro del problema 2, puedes ponerme tu jsp, tu tabla está dentro de un formulario con multipart o es en la jsp de edicción solo?.

Gracias. @unaimartinez

unaimartinez commented 5 years ago

Hola Hugo, el multipart está sólo en la jsp de edición, te adjunto el código de mi jsp.

Un saludo. publicacionEdit.txt

hmartinez85 commented 5 years ago

Hola, y el content type lo estáis cambiando, tienes la llamada JS que hacéis . gracias. @unaimartinez

unaimartinez commented 5 years ago

Hola, el content type que se manda es "multipart/form-data". Adjunto un fichero con los parámetros de la llamada ajax que se ejecuta con el content type remarcado. Multipart_ajax

Un saludo.