问题描述
我有这个jquery来检查页面加载时的单选按钮:
$('input[value="modelos"]').attr('checked',true);
然后我有一个下拉列表:
<select id="talents_meta_category" name="talents_meta_category">
<option value="tab_1495127126289">Modelos</option>
<option value="tab_1495132259463">Música</option>
</select>
如果<option value="tab_1495127126289">Modelos</option>
时,如何检查input[value="modelos"]
?
1楼
您可以通过测试select的value属性来检查是否有选项
$(function(){ if($('#talents_meta_category').val()){ $('input[name="favorites"][value="modelos2"]').attr('checked',true); } })
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <select id="talents_meta_category" name="talents_meta_category"> <option value=""></option> <option value="tab_1495127126289">Modelos</option> <option value="tab_1495132259463" selected>Música</option> </select> <label for="modelos"><input type="radio" name="favorites" value="modelos"></label> <label for="modelos"><input type="radio" name="favorites" value="modelos2"></label>
2楼
你可以尝试这个,但我必须在菜单中添加一个空白选项,但如果这是不可接受的让我知道,我会做其他事情。
$("select#talents_meta_category").change(function () { if ($(this).val() === "tab_1495127126289") { $('input[value="modelos"]').attr('checked',true); } });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <select id="talents_meta_category" name="talents_meta_category"> <option></option> <option value="tab_1495127126289">Modelos</option> <option value="tab_1495132259463">Música</option> </select> <input type="radio" value="modelos">
3楼
您可以使用onchange功能。
$("#talents_meta_category").on('change',function(){
let value = $(this).children("option:selected").val();
if(value=="tab_1495127126289"){
$('input[value="modelos"]').attr('checked',true);
}else{
$('input[value="modelos"]').attr('checked',false);
}
});
4楼
如果是这样的话你需要改变条件:
$("select#talents_meta_category").change(function () { if ($(this).val() === "tab_1495127126289") { $('input[value="modelos"]').attr('checked',true); }else{ $('input[value="modelos"]').attr('checked',false); } });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <select id="talents_meta_category" name="talents_meta_category"> <option value="">Please Select</option> <option value="tab_1495127126289">Modelos</option> <option value="tab_1495132259463">Música</option> </select> </br> <input type="checkbox" name="modelos 1" value="modelos"> modelos 1<br> <input type="checkbox" name="modelos 2" value="modelos"> modelos 2<br> <input type="checkbox" name="modelos 3" value="modelos"> modelos 3<br>
复选框根据条件动态更改(选择选项值)
5楼
像这样的东西应该做的伎俩:
// Your check the radio on page load $('input[value="modelos"]').attr('checked', true); // Check if `modelos` is selected if ($('input[value="modelos"]').prop('checked')) { // Add the `selected` attribute to the <option /> $('option[value="tab_1495127126289"]').attr('selected', true); }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type='radio' value='modelos' /> <select id="talents_meta_category" name="talents_meta_category"> <option value="tab_1495127126289">Modelos</option> <option value="tab_1495132259463">Música</option> </select>
希望这可以帮助,
6楼
你可以做很多不同的方式,这里只有一个....
var checkMe = 'tab_1495127126289';
$(function(){
$('input[name=talents_meta_category][value=' + checkMe + ']').prop('checked',true)
});