A jQuery hasAttr () egyenértékű - CSS-trükkök

Anonim

A jQuery-nek valójában nincs .hasAttr()funkciója. Feltételezheti, hogy igen, de sajnos nem.

A StackOverflow szálnak nagyon jó megoldásai vannak.

Szerezze be az attribútumot, ellenőrizze az értéket

var attr = $(this).attr('name'); // For some browsers, `attr` is undefined; for others, `attr` is false. Check for both. if (typeof attr !== typeof undefined && attr !== false) ( // Element has this attribute )

A natív JavaScript-nek van módja

Ha csak jQuery referenciája van…

$(this)(0).hasAttribute("name"); jQObject(0).hasAttribute("name");

A kijelölés szűrése

$(this).is('(name)'); $(this).filter("(name='choice')");