[英]Using Jquery how do I select all input text elements after currently selected input element?
[英]How do I get all select elements that do not have an option selected using jQuery?
如何獲取所有沒有使用 jQuery 選擇選項的選擇元素?
<select id="one">
<option value=""></option>
<option value="test"></option>
</select>
<select id="two">
<option value=""></option>
<option selected value="test"></option>
</select>
什么 jQuery 選擇器會根據沒有選擇只返回 #one?
如果您的情況與 OP 不相似,請參閱https://stackoverflow.com/a/63588880/3499595 (默認值為“”)
$('select option:selected[value=""]').parent()
select
元素的所有:selected
選項""
,在您的情況下,這意味着實際上沒有選擇任何選項。select
)您可以利用 jQuery 的.parent()
和.parent()
.not()
函數。 見下文:
// selector for all 'select' elements with any option below it
var all = $("select>option").parent(); // alternative $("select")
// selector for all 'select' element with a selected child
var selected = $("select>option[selected]").parent();
// the subtraction set "all - selected" achieved by `not`.
var unselected = all.not(selected);
請注意,jQuery 的parent
元素負責從一組子元素的父元素中刪除重復項。
接受的答案為所有select
元素提供了一個值為空的選定選項( ""
),它確實回答了關於 OP 示例 HTML 的問題,其中給出了具有空值的選項,但它並沒有真正回答標題問題。
選擇一個空值的選項和根本不選擇任何選項是有區別的。
要選擇沒有選擇任何選項的所有select
元素,請使用
$('select').not(':has(option:selected)')
如果您有 jquery 庫,請嘗試
$('select option').filter(function(i,d){return !d.hasAttribute("selected")});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.