<div style="display:block;"> <input/> </div> <div style="display:none;"> <input/> </div>
如上的兩個input元素,獲取兩個input元素,常規的按index、id或判斷等形式也能實現,但是很麻煩,可以用以下辦法
$(".div[style='display:block;'] input")
注意“;”分號不能省略.
這里的style是指元素的style屬性,並非css屬性,否則如下改變之后同樣的方法獲取元素會失效
if($(this).css("display")=='none'){ $(this).attr('display','block'); }else{ $(this).css('display','none'); }
如要操作css屬性,可選用attr方法,如
if($(this).css("display")=='none'){ $(this).attr('style','display:block;'); }else{ $(this).attr('style','display:none;'); }
如欲詳細了解css屬性與元素屬性,請移步@參考文章,原文全文如下

使用jquery的.attr( )方法去給div隱藏,這樣寫的 $("#div_id").attr("display","none"),發現並沒有生效,但是docunment.getElementById("div_id").style("display","none")就生效了。 而且再調試的時候發現,使用$("#div_id").attr("width","180")也是生效的.... 原因:應該寫成 $("#div_id").css("display","none") display屬於css中的屬性,而不屬於該div的屬性,而width既是div的屬性,也是css的屬性,所以會出現上面的情況,以后再使用jquery去修改某一標簽的style 使用css( ),修改元素的屬性 使用attr( )。 總結: attr(): 獲取和修改的是元素的屬性,如img的src屬性和alt屬性,a鏈接的href屬性等等。 css() :獲取和修改的是樣式里面的屬性,即是style里面的屬性。 --------------------- 作者:chdyiboke 來源:CSDN 原文:https://blog.csdn.net/chdyiboke/article/details/82700001 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!