如果选择单选按钮,则更改下拉选项
Change dropdown options if radio button selected
我选择了3个单选按钮,如果用户选择其中一个,我想要所有但2个选项从下拉列表中消失,进一步下拉页面,谁能帮助请?如果有人选择了第三个选项(id="notify_type3"),那么我只希望下拉显示一个初始的"选择" (<option value="">Please select</option>
)和另一个选项(例如,<option value="4">Option 4</option>
),如果其他2个单选按钮被选中,那么它需要显示整个列表。
Staff member
<input type="radio" name="notify_type" id="notify_type1" value="new member of staff">
Editorial Freelance
<input type="radio" name="notify_type" id="notify_type2" value="new freelance user">
Contractor/Consultant
<input type="radio" name="notify_type" id="notify_type3" value="new contractor user">
<select class="dropdown" name="starter_company" id="starter_company">
<option value="">Please select</option>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
<option value="4">Option 4</option>
<option value="5">Option 5</option>
</select>
你可以这样做
$("#notify_type1").click(function(){
$('.selDiv option[value="SEL1"]') .remove()
})
// SEL1 will be value you desired to remove after clicking that radio button
我可能会完全隐藏下拉菜单,直到用户选择一个选项,然后显示它。但我会这样做,这样,如果他们改变单选按钮,你的选项将重新出现。
给你一把小提琴。
$("input[type='radio'][name='notify_type']").change(function(){
var selected = $("input[type='radio'][name='notify_type']:checked").val();
if(selected == "new contractor user") var opts = [
{name:"Please Select", val:""},
{name:"Option 4", val:"4"}
];
else var opts = [
{name:"Please Select", val:""},
{name:"Option 1", val:"1"},
{name:"Option 2", val:"2"},
{name:"Option 3", val:"3"},
{name:"Option 4", val:"4"}
];
$("#starter_company").empty();
$.each(opts, function(k,v){
$("#starter_company").append("<option value='"+v.val+"'>"+v.name+"</option>");
});
});
在服务器端你应该得到单选按钮点击事件,你必须重新绑定下拉列表
谢谢你!
你救了我的命!
对不起,我还不能评论,但真的想感谢我的救命恩人~!!
以下是我的工作代码:
jQuery(document).ready(function(){$(".time-section").addClass("hidden");
$("input[type='radio'][name='time-select']").change(function () {
var timeSelected = $("input[type='radio'][name='time-select']:checked").val();
$(".time-section").removeClass("hidden");
if (timeSelected == "Lunch") var timeOpts = [
{name:"Lunch: 12:00pm",val:"Lunch: 12:00pm"},
{name:"Lunch: 12:30pm",val:"Lunch: 12:30pm"},
{name:"Lunch: 1:00pm",val:"Lunch: 1:00pm"},
{name:"Lunch: 1:30pm",val:"Lunch: 1:30pm"}
]
else if (timeSelected == "Dinner") var timeOpts = [
{name:"Dinner: 6:30pm - 8:30pm",val:"Dinner: 6:30pm - 8:30pm"},
{name:"Dinner: 8:30pm - 10:30pm",val:"Dinner: 8:30pm - 10:30pm"}
]
$("#Times").empty();
$.each(timeOpts, function(k,v){
$("#Times").append("<option value='"+v.val+"'>"+v.name+"</option>");
});
});
});
这里我修改了一些代码,所以在我选择"午餐"或"晚餐"之后,只有下拉菜单的时间段出现。
希望这对某人有帮助。:)
相关文章:
- 使用此选项选择父类内部的类
- 更新:仅根据单选按钮和所选选项选择特定项目
- 使用PHP通过HTML表单选项选择器过滤MYSQL结果
- ng-单击在IE中不起作用的选项选择Angularjs
- 从选项选择中删除值
- On为<选项>选择等效项
- 用户界面先前选择的选项选择更改
- 使用ng重复或ng选项和删除空白选项选择长方体角度
- 在HTML5、CSS、JavaScript中添加选项选择器,类似于移动应用程序中的选项设置
- 输入:选中,选项:选择选择器
- 根据使用angularjs从下拉菜单中选择的选项选择适当的复选框
- 如何根据 html 中的选项/选择重定向用户(单击按钮后)
- 使用ng选项选择中的ng选项进行过滤器下拉列表
- 如何设置选项选择的值
- 如何搜索长下拉选项/选择列表
- jQuery - 根据下拉选项选择列出结果
- 从选项选择单击时打开 2 个 URL
- 在 Angular JS 中为 ng 选项选择默认值
- 下拉选项选择的操作
- 通过单击单选按钮清除所有选项选择条目