Czy możliwe jest wysyłanie elementów formularza (serializowanych .serialize()
metodą) i innych parametrów za pomocą jednego żądania AJAX?
Przykład:
$.ajax({
type : 'POST',
url : 'url',
data : {
$('#form').serialize(),
par1 : 1,
par2 : '2',
par3: 232
}
}
Jeśli nie, to jaki jest najlepszy sposób na przesłanie formularza wraz z innymi parametrami?
Dzięki
jquery
ajax
forms
serialization
KenavR
źródło
źródło
Alternatywnie możesz użyć
form.serialize()
with,$.param(object)
jeśli przechowujesz parametry w jakiejś zmiennej obiektu. Zastosowanie byłoby następujące:Więcej informacji można znaleźć pod adresem http://api.jquery.com/jQuery.param .
źródło
form
Powinno zawierać wszystkie informacje (w ukrytych pól w razie potrzeby), dzięki czemu można go serializacji w jednym połączeniu. W ten sposób, jeśli JS jest wyłączony lub zawiedzie, przesyłanie formularza powinno nadal być bezpieczne i zawierać wszystkie dane po wysłaniu.Nie wiem, ale żadne z powyższych nie działało dla mnie, wtedy użyłem tego i zadziałało:
W serializowanej tablicy formularza jest on przechowywany jako para klucz-wartość
Wprowadziliśmy nową wartość lub wartości tutaj w postaci zmiennej, a następnie możemy teraz bezpośrednio przekazać tę zmienną.
źródło
Jeśli chcesz wysłać dane z serializacją formularza, możesz spróbować tego
źródło
przekazać wartość parametru w ten sposób
i tak dalej.
źródło
Zgodnie z odpowiedzią Rory'ego McCrossana , jeśli chcesz wysłać tablicę liczb całkowitych (prawie dla .NET), oto kod:
źródło
Możesz utworzyć pomocniczy formularz używając jQuery z zawartością innego formularza, a następnie dodać go z innych parametrów, więc musisz tylko serializować go w wywołaniu ajax.
źródło
Naprawiam problem ze stwierdzeniem under; wysyłaj dane z adresem URL w tej samej metodzie GET
i uzyskaj wartość za pomocą
$_REQUEST['value']
OR$_GET['id']
źródło
Możesz również użyć funkcji serializeArray, aby zrobić to samo.
źródło