[英]Assigned parameters and defining functions, jQuery
現在我有代碼:
$.get("test.php", function(($cars){
$cars = cars;
}, "json");
$(function(cars){
$.each(cars, function(i, startList){
if(iNLarr[i]){
iNLarr[i](startList.name);
}
});
});
好的,我將$ cars數組分配給cars變量。 基本上$ cars是一個對象數組,每個對象都是一個關聯數組。 我需要能夠在數組上工作,所以我首先將其分配給了變量。 下一個功能使用汽車中的信息並將其顯示在html元素中。 iNLarr是一個函數數組,每個函數都使用從$ cars對象數組中檢索的名稱來更改替換名稱html元素。
每當我運行該函數時,我都會得到類似array.prototype.map的有效參數。 我認為startList是我希望將其分配給對象的虛構參數,以便我可以檢索每個名稱,但是我猜並非如此,任何人都可以幫助我。
我不確定我是否已經正確定義了函數。
使用以下代碼完成您的任務:
$.get("test.php", function(($cars){
cars = $cars;
$.each(cars, function(i, startList){
if(iNLarr[i]){
iNLarr[i](startList.name);
}
});
}, "json");
告訴我是否需要任何解釋。
目前,這兩個功能都沒有意義。 第一行:
$cars = cars;
會使用未定義(至少在顯示的代碼中未定義)變量cars
覆蓋 ajax調用的結果。 然后,您實際上不會對$cars
進行任何進一步的操作-如果您不使用它,就沒有任何價值。
然后,您的第二個函數將綁定為文檔就緒處理程序 ,這意味着cars
參數將設置為引用jQuery
。 也就是說,當您調用$()
或jQuery()
並傳遞一個函數作為參數時:
$(function() { /* some code */ });
...當DOM准備就緒時,將調用該函數。
您應該使用第一個函數中的ajax調用來完成所需的所有處理,如下所示:
$.get("test.php", function(cars){
$.each(cars, function(i, startList){
if(iNLarr[i]){
iNLarr[i](startList.name);
}
});
}, "json");
您可能需要將以上內容包裝在文檔就緒處理程序中,或將其放在正文末尾的腳本中。
$(function () { … }
符號用於在文檔准備/加載時執行代碼。
$.get
在腳本加載時完成(即加載了文檔),但是響應可以在文檔加載后進行。
$(function() {
$.get("test.php", function(cars) {
$.each(cars, function(i, startList) {
if(iNLarr[i]){
iNLarr[i](startList.name);
}
});
}, "json");
});
願它對您有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.