我的网页上有三个<select>
下拉列表:成人,儿童和婴儿(想想航空公司预订网站)。< / p>
一般情况下, Adult 下拉列表中的选项编号为1-9, Child 下拉列表中的编号为0-8的选项和 Infant 下拉列表的编号为0-1。如果用户选择成人值 4 ,则 Child 下拉列表可用数字应更改为反映0-5和婴儿下拉列表应更改为0-4。
我正在尝试使用javascript实现这一点,但一直陷入困境。很高兴在必要时提供更多信息 - 请告诉我您需要了解的内容。
这是我到目前为止所做的:
function MyApp(sender) {
var ListBox1Id = '<%= ddl1.ClientID %>';
var ListBox2Id = '<%= ddl2.ClientID %>';
var ListBox3Id = '<%= ddl3.ClientID %>';
var selectedIndex = document.getElementById(ListBox1Id).selectedIndex;
var ii = document.getElementById(ListBox1Id).options[selectedIndex].value;
var count = document.getElementById(ListBox1Id).length;
if (ii != 0) {
for (var k = 0; k <= count - ii; k++) {
document.getElementById(ListBox2Id).value = k;
}
}
}
这是我在 Adult 下拉列表的onchange
事件中调用的函数,我编写了用于显示 Child 下拉列表值的脚本< em>成人下拉列表的选择。
答案 0 :(得分:0)
var ListBox1Id = '<%= ddl1.ClientID %>';
var ListBox2Id = '<%= ddl2.ClientID %>';
var ListBox3Id = '<%= ddl3.ClientID %>';
var count = $("#"+ListBox1Id+"option:selected").text();
var listbox2 = document.getElementById(ListBox2Id);
listbox2.empty();
for(var i=0; i++; i <= count){
listbox2.append(
$('<option></option>').val(i).html(i)
);
}
var listbox3 = document.getElementById(ListBox3Id);
listbox3.empty();
for(var j=0; j++; j < count){
listbox3.append(
$('<option></option>').val(j).html(j)
);
}
根据这个修改您的代码,如果需要,更改计数逻辑,它应该是好的..希望它有所帮助:)