我有一个生成id的复选框集合,其中一些有一个额外的属性。是否有可能使用JQuery来检查一个元素是否具有特定的属性? 例如,我能否验证以下元素是否具有属性“myattr”?属性的值可以变化。

<input type="checkbox" id="A" myattr="val_attr">A</input>

例如,我如何才能获得具有此属性的所有复选框的集合而不逐个检查?这可能吗?


当前回答

$("输入(attr]”)。长度可能是更好的选择。

其他回答

这是可行的:

$('#A')[0].hasAttribute('myattr');

在JavaScript中,…

null == undefined

...返回true。就是==和===之间的差值。此外,名称undefined可以被定义(它不像null是一个关键字),所以你最好用其他方式检查。最可靠的方法可能是比较typeof操作符的返回值。

typeof o == "undefined"

然而,在这种情况下,与null进行比较是可行的。

*假设未定义实际上是未定义的。

$("输入(attr]”)。长度可能是更好的选择。

除了选择带有属性$('[someAttribute]')或$('input[someAttribute]')的所有元素外,您还可以使用一个函数对对象进行布尔检查,例如在单击处理程序中:

if (!这是他的功劳。

如果属性出现在给定的HTML元素中,我们可以很容易地访问value属性。

var offORonlinePath="../img/";   //We can easy to change the path anytime
var extension=".webp"; //we can later change any value like png,jpg,...

$("img[data-src]").each(function(){
  var imgName=$(this).data("src");

  $(this).attr("src",offORonlinePath+imgName+extension);

})