如何使用javascript根据另一个下拉列表更改下拉列表值?
我的网页上有三个下拉列表:成人、儿童和婴儿航空订票网站 通常,成人下拉列表的选项编号为1-9,儿童下拉列表的选项编号为0-8,婴儿下拉列表的选项编号为0-1。如果用户选择成人值4,则儿童下拉列表可用数字应更改为反映0-5,婴儿下拉列表应更改为反映0-4 我正试图用javascript实现这一点,但一直被卡住。如果有必要,很乐意提供更多信息-请告诉我您需要了解的内容 以下是我到目前为止的情况:如何使用javascript根据另一个下拉列表更改下拉列表值?,javascript,asp.net,cascadingdropdown,Javascript,Asp.net,Cascadingdropdown,我的网页上有三个下拉列表:成人、儿童和婴儿航空订票网站 通常,成人下拉列表的选项编号为1-9,儿童下拉列表的选项编号为0-8,婴儿下拉列表的选项编号为0-1。如果用户选择成人值4,则儿童下拉列表可用数字应更改为反映0-5,婴儿下拉列表应更改为反映0-4 我正试图用javascript实现这一点,但一直被卡住。如果有必要,很乐意提供更多信息-请告诉我您需要了解的内容 以下是我到目前为止的情况: function MyApp(sender) { var ListBox1Id = '<%
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;
}
}
}
这是我在成人下拉列表的onchange事件中调用的函数,我已经编写了脚本,用于根据成人下拉列表的选择显示子下拉列表的值
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)
);
}
根据此修改您的代码,如果需要,更改计数逻辑,应该可以继续。。希望能有所帮助:@milindiantwar我现在将在这里发布我的代码。您用来更改ddl值的逻辑是什么?也就是说,如果我们从成人ddl中选择4名成人,为什么儿童ddl为0-5,婴儿ddl为0-4???@Avishek,儿童DDL值从0到5.0,1,2,3,4,5开始。请查看任何机票预订网站。@Avishek试图询问为什么0-5的逻辑,我也想知道如果选择4成人,我们如何决定0-5儿童,我的意思是,如果我在成人下拉列表中选择5、6或7怎么办?我已经修改了行以获得计数变量。请检查。@Thiri:您检查过了吗?