[英]Passing GET data from one function to another
我正在嘗試將一些數據從一個函數傳遞到另一個函數。 我已經成功撥打了AJAX並獲得了數據。 但是我現在不知道的是如何將數據傳遞給另一個函數。
'use strict'
$(document).ready(function() {
console.log('Page Ready');
changeColor();
getData();
});
function getData(data) {
var root = 'http://jsonplaceholder.typicode.com',
data;
data = $.ajax ({
url: root + '/posts/1',
type: 'GET',
success: function(data) {
console.log(data.body);
}
});
}
function changeColor(data) {
$('button').on('click', function() {
$('.classy').toggleClass('blue');
$('.classy').append(data.body);
});
}
有人可以建議我如何從getData
獲取數據並將其傳遞給changeColour
嗎?
只需在ajax成功中調用changeColor方法並傳遞數據即可。 因為不需要它,所以從getData中刪除了數據變量。
'use strict'
$(document).ready(function() {
console.log('Page Ready');
changeColor();
getData();
});
function getData() {
var root = 'http://jsonplaceholder.typicode.com';
$.ajax ({
url: root + '/posts/1',
type: 'GET',
success: function(data) {
console.log(data.body);
changeColor(data); //Just call the method here
}
});
}
function changeColor(data) {
$('button').on('click', function() {
$('.classy').toggleClass('blue');
$('.classy').append(data.body);
});
}
僅從success:
函數中調用changeColor()
函數。
function getData(data) {
var root = 'http://jsonplaceholder.typicode.com',
data = $.ajax ({
url: root + '/posts/1',
type: 'GET',
success: function(data) {
console.log(data.body);
changeColor(data);
}
});
}
請注意,我刪除了您的簡單data;
線,這沒有意義。
您可以將changeColor函數放入getData函數的成功調用中。
function getData(data) {
var root = 'http://jsonplaceholder.typicode.com',
data;
data = $.ajax ({
url: root + '/posts/1',
type: 'GET',
success: function(data) {
console.log(data.body);
changeColor(data);
}
});
}
您基本上有兩個選擇:從成功函數中調用changeColor函數,或者在成功函數中將數據存儲在可以在其他位置訪問的變量中(可以直接通過changeColor或傳遞到changeColor中)。
第二個選項可以通過訪問全局變量(不是一個好主意)或傳入一個對象然后將其傳遞到changeColor中來實現。 哪一個最好取決於您的使用情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.