2010-07-23 31 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