jQuery:Change下拉列表选中/取消选中复选框时选择
我有以下表格:jQuery:Change下拉列表选中/取消选中复选框时选择,jquery,forms,select,checkbox,drop-down-menu,Jquery,Forms,Select,Checkbox,Drop Down Menu,我有以下表格: <input type="checkbox" value="First" />First <input type="checkbox" value="Second" />Second <input type="checkbox" value="Third" />Third <select name="first-drop"> <option value="---">---</option>
<input type="checkbox" value="First" />First
<input type="checkbox" value="Second" />Second
<input type="checkbox" value="Third" />Third
<select name="first-drop">
<option value="---">---</option>
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
</select>
首先
第二
第三
---
选择1
选择2
是否有一种方法(使用JS/jQuery)可以在取消选中first
复选框时将first drop
的值更改为--
$('input[type="checkbox"][value="First"]').change(function (){
$('select[name="first-drop"]').toggle();
});
请注意,我修复了您的标记:
<input type="checkbox" value="First" checked="checked" >First
<input type="checkbox" value="Second" />Second
<input type="checkbox" value="Third" />Third
<select name="first-drop">
<option value="">---</option>
<option value="Option1">Option1</option>
<option value="Option2">Option2</option>
</select>
如果要为DOM元素提供ID,可以简单如下:
$('#first').change(function() {
if (!this.checked)
$('#nothing').prop('selected', 'selected');
});
更新的DOM:
<input type="checkbox" value="First" id="first" >First
<input type="checkbox" value="Second">Second
<input type="checkbox" value="Third">Third
<select name="first-drop">
<option value="" id="nothing" >---</option>
<option value="Option1" >Option1</option>
<option value="Option2">Option2</option>
</select>
首先
第二
第三
---
选择1
选择2
我在第一个复选框中添加了一个ID
<input id="first" type="checkbox" value="First">First</input>
<input type="checkbox" value="Second">Second</input>
<input type="checkbox" value="Third">Third</input>
<select name="first-drop">
<option value="">---</option>
<option value="Option1">Option1</option>
<option value="Option2">$Option2</option>
</select>
<script type="text/javascript">
$(function () {
$("#first").click(function () {
if ($(this)[0].checked == true) {
$("[name='first-drop'] option:first").attr("selected", "selected");
}
});
});
</script>
首先
第二
第三
---
选择1
$Option2
$(函数(){
$(“#第一”)。单击(函数(){
如果($(此)[0]。选中==true){
$(“[name='first-drop']选项:first”).attr(“选定”、“选定”);
}
});
});
演示:
编辑:修复了我的代码,当您取消选中第一个复选框时,它不会切换。这两个段落有两个完全不同的含义。是否要隐藏或更改该值?请更改该值。修正了这个问题,抱歉有点混乱。好的。我更新了。谢谢你的标记修复!我的问题更多的是在复选框未选中时更改下拉列表的选定值,而不是使下拉列表消失。我的措辞可能有误导性,我会修改它。
<input id="first" type="checkbox" value="First">First</input>
<input type="checkbox" value="Second">Second</input>
<input type="checkbox" value="Third">Third</input>
<select name="first-drop">
<option value="">---</option>
<option value="Option1">Option1</option>
<option value="Option2">$Option2</option>
</select>
<script type="text/javascript">
$(function () {
$("#first").click(function () {
if ($(this)[0].checked == true) {
$("[name='first-drop'] option:first").attr("selected", "selected");
}
});
});
</script>