1

次の HTML がある場合:

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

jQuery.when選択ボックスから選択したオプションに基づいて、 が受け取る入力パラメータの数を変更するにはどうすればよいですか?

たとえば、最初のオプションを選択した場合、 jQuery.when3 つの JSON フィードをロードする必要があります。オプション 2 が選択された場合、最初のオプションからロードされた 3 つのフィードの一部ではない 1 つのフィードをロードする必要があります。3 番目の選択ボックス オプションが選択されている場合は、まったく異なる 2 つのフィードを読み込む必要があります。

現時点で私はこれを持っています:

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

2 つのフィードはハードコードされています。フィードとフィードの数をより動的にするにはどうすればよいですか?

4

1 に答える 1

5

promise オブジェクトの配列を作成し、.when に適用します。

var promiseArr = [];
$.each(someobj,function(){
    ...
    promiseArr.push(promiseObj);
})
$.when.apply($,promiseArr).done(...
于 2013-09-23T15:41:19.093 に答える