Odbieranie danych z ajax i zapisania w zmiennej

Odbieranie danych z ajax i zapisania w zmiennej
pol90
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1181
0

Mam takie pytanie jak za pmocą ajax odebrac dane nie w $("#div") tylkow zmiennej
Zawsze to robiłem tak jak jeszcze nie potrzebowałem zmiennej

Kopiuj


$("#div").load(url + "?i=" + i);

Myślałęm, że takie coś wystarczy

Kopiuj
var variable;
variable.load(url + "?i=" + i);

Ale to nic nie dało.

.__.
  • Rejestracja: dni
  • Ostatnio: dni
0

Metoda .load ustawia zawartość elementu na treść odpowiedzi od serwera, a Ty powinieneś użyć: https://api.jquery.com/jquery.ajax/

pol90
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1181
0
.__. napisał(a):

Metoda .load ustawia zawartość elementu na treść odpowiedzi od serwera, a Ty powinieneś użyć: https://api.jquery.com/jquery.ajax/

A jak tego użyć, żeby pobierało dane do zmiennej ?

.__.
  • Rejestracja: dni
  • Ostatnio: dni
1

Radzę zwrócić uwagę na async: false i odpowiedzieć sobie na pytanie, czy takie rozwiązanie będzie okej

Kopiuj
var getTodoItem = function(i) {
	var data = []
	$.ajax({
		url: 'https://jsonplaceholder.typicode.com/todos/' + i,
		async: false
	}).done(function(response) {
		data = response
	})
	return data
}

var item = getTodoItem(1)
console.log(item.title)

Masz też lepszą opcję asynchronicznego pobierania danych (zmienna data będzie pusta dopóki nie dostanie odpowiedzi od serwera), ale musisz wtedy odpowiednio zaprojektować skrypt

Kopiuj
var data

$.ajax({
	url: 'https://jsonplaceholder.typicode.com/todos/1'
}).done(function(response) {
	data = response
})
pol90
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1181
0

Dzięki ostatecznie użyłem coś takiego

Kopiuj
    var data

$.ajax({
    url: url,
    async: false
}).done(function(response) {
    data = response
})

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.