Korzystam z nowego obiektu FormData HTML5, aby opublikować niektóre wartości i obraz za pośrednictwem Ajax. Do tej pory działa dobrze. Teraz chcę opublikować tablicę za pomocą tego obiektu, ale wszystko, co mam na serwerze, to "[obiekt - obiekt]". Jak mogę opublikować tablicę z formularzami?Umieszczanie tablicy przy użyciu formularza
Co Ive got dotąd
var formData=new FormData();
formData.append('text', $('#text').attr('value'));
formData.append('headline',$('#headline').attr('value'));
formData.append('myarray',{key1: 'bla', key2: 'blubb'});
Ostatnia linia doesnt pracy. Wysyłam żądanie z tym kodem
$.ajax({
url: 'xyz',
data: formData,
type: 'POST',
processData: false,
contentType: false,
success: function(data) {
var decoded=$.parseJSON(data);
displaySuccess('Success', decoded.message);
},error: function(data){
var decoded=$.parseJSON(data);
displayError('Error', decoded.message);
},complete: function(data){
$('#cursor').hide();
$("#submitbutton").removeAttr('disabled')
}
});
Z góry dziękuję.
Tak, możesz przekazywać przedmioty! spróbuj z polem danych jquery. właśnie utworzyłem złożony obiekt i przekazałem go i zachował tę samą strukturę na serwerze –
Witaj @DanyKhalife, w jaki sposób to osiągnąłeś? Mam podobny problem. – uikrosoft
@uikrosoft Możesz po prostu przekazać obiekt, tak jak to jest do jQuery. Powiedzmy, że masz obiekt 'var myData = {a: 1, b: 2, c: [3,4,5]};' wywołanie jQuery będzie podobne do '$ .ajax ({url: '/ myscript. php ', metoda:' POST ', dane: myData, dataType:' json ', sukces: funkcja (odpowiedź) {console.log (odpowiedź);}}) ' –