entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

Problema con parametros de ajax

hola a todos, desde ya muchas gracias por cualquier ayuda, tengo el siguiente codigo:

function uploadAjax() {
        var inputFileImage = document.getElementById("archivo");
        var file = inputFileImage.files[0];
        var data = new FormData();

        data.append('archivo', file);

        var url = "subir_archivo.php";
        var campo1 = document.getElementById("folio_formato").value;
        //alert(campo1);
        var params ={
            "CAMPO1": campo1 //type of process which will be used in the ajax call              
        };

        $.ajax({
            url: url,
            type: 'POST',
            contentType: false,
            data: data,params,
            processData: false,
            cache: false
        }).done(function(data){
            if(data.ok){
                // mostrarRespuesta('El archivo ha sido subido correctamente!.', true);
                  //      $("#nombre_archivo, #archivo").val('');
                  alert("ok");

            }else {
                alert(data.msg)
            }
        });

}

la imagen si se sube pero el parametro que estoy mandando no, no se q estoy haciendo mal, si alguien me puede ayudar, se los agradeceré mucho... Saludos!

1 Respuesta

4votos

magarzon Puntos18660

Hola.

Los parámetros adicionales también los tienes que anexar al FormData:

function uploadAjax() {
        var inputFileImage = document.getElementById("archivo");
        var file = inputFileImage.files[0];
        var data = new FormData();

        data.append('archivo', file);

        var url = "subir_archivo.php";
        var campo1 = document.getElementById("folio_formato").value;

        data.append('campo1', campo1);

        $.ajax({
            url: url,
            type: 'POST',
            contentType: false,
            data: data,
            processData: false,
            cache: false
        }).done(function(data){
            if(data.ok){
                // mostrarRespuesta('El archivo ha sido subido correctamente!.', true);
                  //      $("#nombre_archivo, #archivo").val('');
                  alert("ok");

            }else {
                alert(data.msg)
            }
        });

}

OJO: FormData no está soportada en IE por debajo de la versión 10

rach comentado Sep 8, 2016

muchas gracias por tu respuesta, ayer lo implementé así, por cierto muy dudosa y pensé que no había funcionado, pero ya vi que lo estaba recibiendo mal en el PHP.
Saludos

Por favor, accede o regístrate para responder a esta pregunta.

¿Conoces alguien que puede responder?
¡Comparte esta pregunta!


¿Eres Usuario Apple?

...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta