我有一个MVC页面,在表单中有一些控件。我需要帮助的部分: 我在列表中有一堆下拉列表。全部动态命名(drop {0},其中{0}是id (真的,它只是一个柜台:1,2,3等))。在列表的顶部,我想要另一个下拉列表,它会在更改时更新所有下拉列表。我已经用复选框做了类似的事情(检查一个,所有都被检查等)所以我认为这可以完成,希望就这么简单。我更喜欢它在客户端,所以一旦提交表单,新值将被添加/更新到数据库。
编辑:所有下拉列表的值都是静态的。它们都是1-50的列表,表示我需要为给定记录生成的卡数。
这就是我执行复选框的方式:
$("#chkSelectAll").click(function() {
$(".checkbox").attr('checked', this.checked);
});
关于从哪里开始的任何想法?
谢谢!
答案 0 :(得分:1)
您可以使用starts with选择器:
$('#somedropdown').change(function() {
// when the value of the dropdown changes loop through other dropdowns
// whose id begins with "drop"
$('select[id^=drop]').each(function() {
// do something with the dropdown
});
});
答案 1 :(得分:0)
我知道您希望使用jQuery设置其他下拉列表的选择。如果是这样,那就这样做....
function onSelectChange(){
var stext = $("#dropdown0 option:selected").val();
switch (stext) {
case "Value1":
$("#dropdown1 > option[value='Good']").attr('selected','selected');
$("#dropdown2 > option[value='9000']").attr('selected','selected');
break;
case "Value2":
$("#dropdown1 > option[value='Better']").attr('selected','selected');
$("#dropdown2 > option[value='34000']").attr('selected','selected');
break;
case "Value3":
$("#dropdown1 > option[value='Good']").attr('selected','selected');
$("#dropdown2 > option[value='1000']").attr('selected','selected');
break;
case "Value4":
$("#dropdown1 > option[value='Better']").attr('selected','selected');
$("#dropdown2 > option[value='9000']").attr('selected','selected');
}
}
答案 2 :(得分:0)
一种可能的解决方案(显然很多):
$("#ddlQuantity").change(function() {
$(".quantity").attr('selectedIndex', this.selectedIndex);
});
由于.quantity类适用于所有创建的对象,因此更改“class”的.attr工作正常。