2013-09-23 72 views
1

如果我有以下HTML:jQuery.when基於HTML選擇

<select id="sURL"> 
    <option value="1">one</option> 
    <option value="2">two</option> 
    <option value="3">three</option> 
</select> 

如何更改輸入的數量參數jQuery.when接收基於從選擇框中選擇的選項?

例如,如果我選擇了第一個選項,我希望jQuery.when可以加載三個JSON訂閱源。如果選擇了選項二,我希望它加載一個不屬於從第一個選項加載的三個源的一部分的源。如果選擇了第三個選擇框選項,我希望它加載兩個完全不同的提要。

目前,我有這樣的:

$.when(//load feed one, //load feed two).done(// bla bla bla 

兩個提要硬編碼。如何讓Feed和Feed的數量更加動態?

回答

5

創建一個承諾對象數組並將其應用於.when。

var promiseArr = []; 
$.each(someobj,function(){ 
    ... 
    promiseArr.push(promiseObj); 
}) 
$.when.apply($,promiseArr).done(...