jQueryhasAttr检查元素上是否有属性

如何检查jQuery中的元素是否有属性?类似于hasClass,但是attr?

例如,

if ($(this).hasAttr("name")) {
    // ...}


慕容708150
浏览 677回答 3
3回答

有只小跳蛙

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) {    // ...}

慕的地8271018

不如.$(this).is("[name]")?这个[attr]语法是具有属性的元素的css选择器。attr,和.is()检查所调用的元素是否与给定的CSS选择器匹配。

拉莫斯之舞

如果您经常检查属性是否存在,我建议创建一个hasAttr函数,用于您在问题中的假设:$.fn.hasAttr&nbsp;=&nbsp;function(name)&nbsp;{&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;return&nbsp;this.attr(name)&nbsp;!==&nbsp;undefined;};$(document).ready(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;if($('.edit').hasAttr('id'))&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert('true'); &nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert('false'); &nbsp;&nbsp;&nbsp;&nbsp;}});<div&nbsp;class="edit"&nbsp;id="div_1">Test&nbsp;field</div>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JQuery