简体   繁体   English

如果值等于或在jquery中选择,则追加选择选项

[英]append select option if value equal or selected in jquery

I have 2 select tags. 我有2个选择标签。 second is depend on the first one. 第二个取决于第一个。 It is working if I check by only value, but I also need to check if is selected. 如果仅按值检查,那是可行的,但是我还需要检查是否已选中。

if(el.val() === "LOCATIONS" || el.is(' option:selected') ){
 $("#status option").remove();
 $("#status").append("<option value=''>All Packages</option><option value=''>KL</option>");
}

I'm trying to make depended select dropdown. 我试图使依赖选择下拉列表。 if I remove el.is('option:selected') it appends the options based on the chosen option of 1st select. 如果我删除el.is('option:selected')它会根据1st select的所选选项附加选项。 but it should also append the options if any option is selected on the first dropdown 但如果在第一个下拉菜单中选择了任何选项,它也应该附加选项

here is jsfiddle 这是jsfiddle

Well it works even if you check one condition ie the value of selected option. 很好,即使您检查one condition即所选选项的值,它也能正常工作。 But to pass two conditions you have to use && operator and instead of el.is('option:selected') , you can change this to ("el:selected"); 但是要传递两个条件,您必须使用&& operator ,而不是el.is('option:selected') ,您可以将其更改为("el:selected"); as below, 如下,

 $(document).ready(function() { var a = $("#source > option:selected").val(); if(a == "REGIONAL"){ $("#status option").remove(); $("#status").append("<option value=''>All Packages</option><option value='Airports'>Airports</option>"); } $("#source").change(function() { var el = $(this); if((el.val() === "AUDIENCES SEGMENT") && ('el:selected')) { $("#status option").remove(); $("#status").append("<option value=''>All Packages</option><option value='Youth'>Youth</option><option value='Working Adults'>Working Adults</option><option value='Family'>Family</option><option value='Travellers'>Travellers</option>"); } else if((el.val() === "REGIONAL") && ('el:selected')) { $("#status option").remove(); $("#status").append("<option value=''>All Packages</option><option value='Airports'>Airports</option>"); } else if((el.val() === "LOCATIONS") && ('el:selected')) { $("#status option").remove(); $("#status").append("<option value=''>All Packages</option><option value=''>KL</option>"); } }); }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> Source: <select id="source" name="source"> <option>All Types</option> <option value="AUDIENCES SEGMENT">AUDIENCES SEGMENT</option> <option selected value="REGIONAL">REGIONAL</option> <option value="LOCATIONS">LOCATIONS</option> </select> Status: <select id="status" name="status"> <option>All Packages</option> </select> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM