Javascript 检查是否所有可见的选择框都选择了某些内容?
您好,我有隐藏的选择框,每次我尝试检查是否所有的选择框都被选中,并且它保持包括隐藏的选择框,我如何使下面的代码只适用于可见的选择框?已尝试。筛选器“:可见”,但没有帮助Javascript 检查是否所有可见的选择框都选择了某些内容?,javascript,jquery,html,Javascript,Jquery,Html,您好,我有隐藏的选择框,每次我尝试检查是否所有的选择框都被选中,并且它保持包括隐藏的选择框,我如何使下面的代码只适用于可见的选择框?已尝试。筛选器“:可见”,但没有帮助 if($('option[disabled]:selected').length == 0){ // ALL the select boxes have something selected rather than the default option alert("success"); }else{ ale
if($('option[disabled]:selected').length == 0){
// ALL the select boxes have something selected rather than the default option
alert("success");
}else{
alert("fail");
}
其中一个可见的选择框:
还有一个隐藏的例子:
给你的父div一个类,比如div
给你的父div一个类,比如div
尝试在可见div上迭代:
function checkAllSelected() {
var unselected = 0;
$('.two-wrap').not('.hidden').each(function() {
if ($(this).find('option:selected').not('[disabled]').length === 0) {
unselected++;
}
});
return unselected === 0;
}
尝试在可见div上迭代:
function checkAllSelected() {
var unselected = 0;
$('.two-wrap').not('.hidden').each(function() {
if ($(this).find('option:selected').not('[disabled]').length === 0) {
unselected++;
}
});
return unselected === 0;
}
您可以只查询未隐藏的div中的选择,而不是进行迭代。举个例子,试试看
$('div:not(.hidden) div select')
您可以只查询未隐藏的div中的选择,而不是进行迭代。举个例子,试试看
$('div:not(.hidden) div select')
尝试迭代所有复选框,然后使用“最近”和“长度”查看父元素是否有隐藏的类
$( "select" ).change(function () {
var message = "success";
$('select').each(function() {
if ( $(this).val() == null && $(this).closest('.hidden').length == 0 ) {
message = "fail";
}
});
alert(message);
});
尝试迭代所有复选框,然后使用“最近”和“长度”查看父元素是否有隐藏的类
$( "select" ).change(function () {
var message = "success";
$('select').each(function() {
if ( $(this).val() == null && $(this).closest('.hidden').length == 0 ) {
message = "fail";
}
});
alert(message);
});
您可以将未选择选项的选择计数与隐藏选择计数相匹配 $one amount,two-amount.onchange,函数{ 如果$'select option[禁用]:selected'.length==$.hidden select.length{ 成功; }否则{ 警报失败; } }; .隐藏{ 显示:无; } 一 -选择一个金额- 十万一 225000一 45万一 1750000一个 二 -选择一个金额- 十万一 225000一 45万一 1750000一个 二 -选择一个金额- 200002 4300002 26万2 五十万二
您可以将未选择选项的选择计数与隐藏选择计数相匹配 $one amount,two-amount.onchange,函数{ 如果$'select option[禁用]:selected'.length==$.hidden select.length{ 成功; }否则{ 警报失败; } }; .隐藏{ 显示:无; } 一 -选择一个金额- 十万一 225000一 45万一 1750000一个 二 -选择一个金额- 十万一 225000一 45万一 1750000一个 二 -选择一个金额- 200002 4300002 26万2 五十万二
感谢您的时间,但这似乎不起作用,即使在您的代码中修复了两个错误-函数中的额外花括号和引号中的消息var。感谢这是完美的:感谢您的时间,但这似乎不起作用,即使在您的代码中修复了两个错误-函数和消息中的额外花括号引号中的var。谢谢这是完美的:
$( "select" ).change(function () {
var message = "success";
$('select').each(function() {
if ( $(this).val() == null && $(this).closest('.hidden').length == 0 ) {
message = "fail";
}
});
alert(message);
});