2017-04-17 86 views
0

如何在jQuery中查找某個屬性是否存在或不存在?jQuery屬性是否存在

例如,選定元素jQuery('。button'),現在可以有一個屬性'xyz'。我如何得知它是否有這個問題?

+0

請把你到目前爲止嘗試過的代碼。請通過以下鏈接瞭解如何在SO上提出問題https://stackoverflow.com/help/how-to-ask –

+0

感謝@rajesh,您已經給出了確切的鏈接,hasAttr完美工作。再次感謝;) – Alice

回答

2

可以使用hasAttribute方法:

// Attach the event to the button 
$('button').on('click', function() { 
    // This will refer the element from where event has originated 
    if (this.hasAttribute("style")) { 
    alert('yes') 
    } else { 
    alert('no') 
    } 

}) 

如果你想使用jQuery庫,你可以直接使用attr方法在if條件。

if($('#yourElement').attr('someProp')){} 

或者,你也可以使用jQuery的is選擇:

if ($(this).is('[style]')) {// rest of the code} 

DEMO

+0

我們應該真的回答一個愚蠢的? – Rajesh

+0

@Rajesh爲什麼不呢? :)更好的答案不會傷害。 – dfsq

+0

@dfsq好的答案永遠不會受到傷害,但分散的答案呢。如果它是一個很好的答案,並且沒有發佈在dupe上,你應該關閉並在原帖中發佈這個答案。由於該帖子已經進行了很長時間,因此您將在評論中獲得不同的選項和討論,涵蓋更多信息。 – Rajesh

2

有兩種解決方法,我知道的。 1)原生Javascript有這個功能.hasAttribute()(例如$(this)[0].hasAttribute('name');)。 2)使用jQuery,你可以檢查$(this).attr('name')是否未定義。

+0

請注意,它是一個糟糕的做法來回答重複。如果問題看起來非常基本或直截了當,有很大的可能性,它被問之前,你應該搜索這樣的帖子,並分享他們的鏈接作爲評論(*,直到你沒有特權關閉,然後關閉自己*) – Rajesh