Llené una matriz con mucha información (80+ variables) y 1 archivo.
var ArrayEnv= {LOTS OF VARIABLES DECLARED + 1 File} console.log(ArrayEnv); -> Just for testing purposes $.ajax({ url: 'controller/send_data', data: ArrayEnv, type: 'POST', cache: false, contentType: false, processData: false, before: '', success: function(data) { console.log('Ajax Value: '+data); }});Entonces, cuando envío los datos al controlador sin el ARCHIVO, todo va bien, pero cada vez que envío un archivo falla. No quiero usar formData ya que estoy obteniendo y validando múltiples variables a través de bifurcaciones en el JS.
Investigué mucho y realmente estoy perdiendo la esperanza ... ¿hay alguna forma de enviar un archivo en la misma matriz que contiene los datos?
En realidad tuve que usar formData para que funcione
data = new FormData($("#validatedForm")[0]); $.ajax({ url: 'controller/send_data', data: data, cache: false, contentType: false, processData: false, beforeSend: function() { console.log('Load'); }, method: 'POST', // type: 'POST', // For jQuery < 1.9 success: function ( data ) { console.log( data ); } });