Utknąłem: próbuję przesłać formularz za pomocą AJAX, ale nie mogę znaleźć sposobu na wysłanie wielu pól danych za pośrednictwem połączenia AJAX.
$(document).ready(function() {
$("#btnSubmit").click(function() {
var status = $("#activitymessage").val();
var name = "Ronny";
$.ajax({
type: "POST",
url: "ajax/activity_save.php",
**data: "status="+status+"name="+name"**,
success: function(msg) {...
Próbowałem różnych rzeczy:
data: {status: status, name: name},
Lub nawet takie rzeczy tylko do celów testowych:
data: "status=testing&name=ronny",
Ale cokolwiek próbuję, nic nie widzę w moim, activity_save.php
więc nic w moim SQL.
Jaka jest więc poprawna składnia, aby umieścić więcej wierszy danych w moim wywołaniu AJAX?
Odpowiedzi:
Prawidłowa składnia to:
Jak określono tutaj: http://api.jquery.com/jQuery.ajax/
Więc jeśli to nie zadziała, ostrzegłbym te zmienne, aby upewnić się, że mają wartości.
źródło
data: {status: status, name: name},
”data: { site-name: "StackOverflow" }
Nie zadziała.key1=value1&key2=value2
lub obiekt formularza{key1: 'value1', key2: 'value2'}
. Jeśli używana jest ta druga postać, przed wysłaniem dane są konwertowane na ciąg zapytania przy użyciu jQuery.param (). "Możesz wysyłać dane przez JSON lub zwykły POST, tutaj jest przykład dla JSON.
Jeśli chcesz go używać za pośrednictwem zwykłego postu, spróbuj tego
źródło
.serialize()
nie jest zdefiniowany!Spróbuj z cudzysłowami:
To musi działać dobrze.
źródło
po tym możesz zrobić:
po:
Ta rzecz działa jako format ciągów JSON.
źródło
Według http://api.jquery.com/jquery.ajax/
źródło
Ten działa dla mnie.
Oto mój PHP:
Oto moje jQuery używające AJAX:
źródło
Jestem początkującym w Ajax, ale myślę, że aby użyć metody „data: {status: status, name: name}”, typ danych musi być ustawiony na JSON tj.
źródło
dataType
jest odpowiedzią typu treści, jakiej oczekujesz od serwera, a nie tym, co wysyłasz. Dane, które wysyłasz, będą zawsze konwertowanefoo=bar&bar=foo
.Użyj tego
Wypróbowuję wiele składni, aby pracować z laravel, działa to dla mnie dla laravel 4.2 + ajax.
źródło
Spróbuj tego:
źródło
Jestem nowy w AJAX i próbowałem tego i działa dobrze.
źródło
Spróbuj użyć :
źródło
Oto, co działa u mnie po 2 dniach drapania głowy; dlaczego nie mogłem uzyskać ustawienia danych AJaX do wysyłania dwóch kluczy / wartości (w tym zmiennej zawierającej nieprzetworzone dane obrazu) było tajemnicą, ale wydaje się, że do tego została napisana funkcja jQuery.param () ;
utwórz tablicę parametrów ze swoimi zmiennymi, bez cudzysłowów:
Użyj zmiennej ser_data jako wartości danych;
Dokumentacja jest tutaj: https://api.jquery.com/jQuery.param/
Mam nadzieję, że to pomoże!
źródło