2015-04-24 3 views
1

Мне нужно передать в яваскрипте массива в JQuery, но мой код возвращает только [объект Object]толкать массив яваскрипта через JQuery

$("#enviar").click(function() { 
     var data = {}; 
     var i = 0; 
     var u = -1; 

     $.each($('.ui'), function() { 
      data[i] = this.value; 
      i++; 
     }); 

     console.log(data); 

     $.ajax({ 
       type: "POST", 
       url: "send_car.php", 
       data: "photo="+data+"&u="+u, 
       success: function(data){ 

       }//end success 
      })//end ajax submit*/ 
}); 

лога консоли показывает массив

Object {0="d-170", 1="d-171"} 

но данные проходят как [объект объекта]

ui class - это скрытый ввод с тем же именем и разными значениями.

Я прочитал различные сообщения и попытался с сериализацией, но получаю те же результаты.

ответ

3

Вы конкатенация объекта и строки, но JQuery поддерживает прохождение в массивах и объекты непосредственно, так просто использовать, что

$.ajax({ 
     type: "POST", 
     url: "send_car.php", 
     data: { 
      photo : data, 
      u  : u 
     }, 
     success: function(data){ 

     } 
}); 

что вы делаете

var obj = {key : "value"}; 

var data = "test" + obj; 

и когда вы добавляете объект в строку, оба они становятся строками, а строковое представление объекта - [object, Object].

Смежные вопросы