[英]Set option of the 2nd Select based on the 1st Select
I have 2 select option 我有2个选择选项
Select 1 选择1
<select id="header_mselect" name="header_mselect" class="form-control col-tablefont">
<option selected="true" value="0">Select</option>
<option value="1">Approved</option>
<option value="2">Disapproved</option>
<option value="3">Hold</option>
</select>
Select 2 选择2
<select id="footer_mselect" name="footer_mselect" class="form-control col-tablefont">
<option selected="true" value="0">Select</option>
<option value="1">Approved</option>
<option value="2">Disapproved</option>
<option value="3">Hold</option>
</select>
And this my code in header change 这是我标题中的代码更改
$('#header_mselect').on('change', function() {
var svalue = $('#header_mselect :selected').val();
var stext = $('#header_mselect :selected').text();
$('#footer_mselect').find('option[text="' + stext + '"]').val();
});
My problem here is that i want to set the value or the option of 2nd select based on 1st select during selecting the option on the 1st one but its not working whats wrong? 我的问题是我想在选择第一个选项时设置基于第一个选择的值或第二个选择的选项,但是它不起作用怎么办?
您可以使用选择第二个选择框选项
$('#footer_mselect').find('option[text="' + stext + '"]').prop('selected', true);
Try select the element with the desired value
directly rather than using a loop (and use the proper selector; you have no orderselect
in your code): 尝试直接选择具有所需value
的元素,而不是使用循环(并使用适当的选择器;您的代码中没有orderselect
):
$('#header_mselect').on('change', function() { var svalue = $('#header_mselect :selected').val(); var stext = $('#header_mselect :selected').text(); $('#footer_mselect > option[value="' + svalue + '"]').prop('selected', true); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="header_mselect" name="header_mselect" class="form-control col-tablefont"> <option selected="true" value="0">Select</option> <option value="1">Approved</option> <option value="2">Disapproved</option> <option value="3">Hold</option> </select> <select id="footer_mselect" name="footer_mselect" class="form-control col-tablefont"> <option selected="true" value="0">Select</option> <option value="1">Approved</option> <option value="2">Disapproved</option> <option value="3">Hold</option> </select>
You can set the value of the first to the second, since both of the dropdowns share the same set of values. 您可以将第一个值设置为第二个值,因为两个下拉列表共享相同的值集。
val()
on the first dropdown itself. 使用第一个下拉菜单本身上的val()
获取所选选项的值。 val()
again. 再次使用val()
将值设置为第二个下拉列表。 Find a working demo below: 在下面找到有效的演示:
$('#header_mselect').on('change', function() { var svalue = $(this).val(); $('#footer_mselect').val(svalue); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select id="header_mselect" name="header_mselect" class="form-control col-tablefont"> <option selected="true" value="0">Select</option> <option value="1">Approved</option> <option value="2">Disapproved</option> <option value="3">Hold</option> </select> <select id="footer_mselect" name="footer_mselect" class="form-control col-tablefont"> <option selected="true" value="0">Select</option> <option value="1">Approved</option> <option value="2">Disapproved</option> <option value="3">Hold</option> </select>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.