jquery发送下拉html
Posted
技术标签:
【中文标题】jquery发送下拉html【英文标题】:jquery send the dropdown html 【发布时间】:2011-03-20 07:52:31 【问题描述】:这是一个疯狂的工作。不确定 jquery 是否可以处理这个问题。我有一个名为 page1.php 的 php 页面,其中我有这样的下拉菜单
<select id="startRecord" >
<option value="0"></option>
</select>
现在我在这里计算一些值,然后将这些值发送到 page2.php。现在在 page2.php 上我做了更多的计算和朗姆酒查询。如果查询结果超过 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()。但不确定如何在这种情况下实现这一点。
【问题讨论】:
rum a query (expr.)
: 一个如此复杂的查询只能在醉酒的情况下创建,或者一个非常困难的查询导致一个人在麻木的感官中寻求安慰。
【参考方案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++;
);
【讨论】:
我认为 OP 正在询问如何使用 jquery 更改第 1 页上的 DDL 的内容。 有点像,但有一个问题。它只是添加 31-60 条记录...如果查询返回 100。它将在 60 处停止。在这种情况下,我们需要 31-60 和 61-90 和 91-100。我注意到的第二件事是它附加了它,这意味着当我运行它时,它会一次又一次地添加另一个相同的选项。谢谢 是的,我只是想展示如何将新项目添加到列表中。我将为您在评论中所说的内容举一个例子。请稍等... 好的,除了多次附加它之外,我解决了所有其他问题..有什么办法可以避免这种情况。谢谢 我会在另一篇文章中提问。感谢您的帮助!以上是关于jquery发送下拉html的主要内容,如果未能解决你的问题,请参考以下文章