2010-07-23 34 views
1

這是在這裏的nutts工作。不確定jquery是否可以處理這個問題。我有一個PHP頁面調用其中page1.php中我已經下拉這樣jquery發送下拉菜單html

<select id="startRecord" > 
    <option value="0"></option> 
</select> 

現在我在這裏caclulate一些值,然後發送值則page2.php。現在在page2.php我做了一些更多的caclulations和朗姆酒查詢。如果查詢結果超過30條記錄,我希望page1.php上的下拉列表反映出來,以便我的用戶可以選擇查詢。所以讓我們說,在page2.php中將查詢的結果是70,下拉第1頁上應該改變這種

<select id="startRecord" > 
    <option value="0">0-30</option> 
    <option value="30">31-60</option> 
    <option value="61">61-70</option> 
</select> 

我想我需要的innerHTML或.html()。但不知道如何在這種情況下實現這一點。

+2

'朗姆酒查詢(表達式)':一個查詢,以便費解它只能創建醉酒,或查詢,以便集中困難導致一個人尋求安慰麻木的感覺。 – Wrikken 2010-07-23 20:47:42

回答

1

不知道我完全按照你的問題,但如果你問如何將項目添加到一個下拉使用jQuery你可以做這樣的事情:

$('#startRecord').append(
    $('<option></option>').val("30").html("31-60") 
); 

編輯:對不起了這麼久。我們現在有一些人在房子上面。幹得好。希望這有助於:

 $(document).ready(
      function() { 
       $("#startRecord option").remove(); 

       var total = 30; 
       var results = 100; 
       var lastOption = { Value: -1, End: 0, toString: function() { return this.Value.toString() + "-" + this.End.toString() } }; 
       var counter = 0; 

       while (parseInt(results/total, 10) >= counter) { 
        lastOption.Value = total * counter + (lastOption.Value == -1 ? 0 : 1); 
        lastOption.End = lastOption.Value + total - (lastOption.Value == 0 ? 0 : 1); 
        lastOption.End = (lastOption.End > results) ? results : lastOption.End; 
        $('#startRecord').append(
         $('<option></option>').val(lastOption.Value.toString()).html(lastOption.toString()) 
        ); 

        counter++; 
       } 
      }); 
+0

我想OP是問如何使用jquery更改第1頁上的DDL的內容。 – gehsekky 2010-07-23 20:50:05

+0

不錯,但有一個問題。 它只是添加31-60記錄...如果查詢返回100.它將停在60。在這種情況下,我們希望31-60和61-90和91-100。 我注意到的第二件事是它附加了它,這意味着當我運行它時,它會一次又一次地添加另一個相同的選項。 謝謝 – Autolycus 2010-07-23 21:08:48

+1

是的,我只是試圖展示如何添加一個新的項目列表。我會給你一個例子,說明你在評論中說了什麼。請保持...... – spinon 2010-07-23 21:16:34