2015-11-27 119 views
1

我有兩個輸入字段的字段具有相同的類,一個顯示:無。我想查詢不顯示輸入字段的值:無。是否有可能使一個元素對jquery不可見

EDIT(與實施例)

<div id="Parent1" style="display:none"> 
    <p> 
    <input type="text" class="title" value=""> 
    </p> 
</div> 

<div id="Parent2"> 
    <p> 
    <input type="text" class="title" value="this is the one I want"> 
    </p> 
</div> 

JS

$('.title').val(); 

返回空白由於第一標題類是空的。我想忽略父母顯示的第一個標題:無。

+0

關於您的問題,您的標題是相當混亂的... –

+0

也添加相應的HTML – Tushar

回答

4

使用:visible選擇器選擇未隱藏的元素。

$('.class:visible') 

注:(從文檔

元素被認爲是可見的,如果他們消耗在文檔中的空間。可見元素的寬度或高度大於零。

帶有visibility: hiddenopacity: 0的元素被視爲可見,因爲它們仍佔用佈局空間。

+0

要選擇不可見的元素,請使用[:hidden selector](https://api.jquery.com/hidden-selector/ ) – Tushar

+0

完美,謝謝。將我的js更改爲'$('。title:visible')。val();'這樣做 –

0

有一個:visible選擇在jQuery的(和:not()選擇,.i.e :not(:visible)

0

既然你有兩個元素,你必須重複他們低谷,並找到隱藏的一個。 我看到這個過程說服我:

$('.class_el').each(function(el){ 
 
     if(el.hidden) 
 
     //do something 
 
});

您也可以使用:可見選擇,如$(EL)。是( ':可見'),而不是讀取屬性的元素。

這是您的選擇! 乾杯!

相關問題