jquery 2.2.3得到未定义的"数据"属性

时间:2018-05-28 09:27:53

标签: javascript jquery

我使用jquery 2.2.3并且我有这个div:

<div class="typeahead" data-minLength="1" data-queryURL="url"></div>

如果我这样做:

console.log(jQuery('.typeahead').attr('data-queryURL')

我得到&#34; url&#34;。

如果我这样做:

console.log(jQuery('.typeahead').data('queryURL')

我得到&#34;未定义&#34;。

2 个答案:

答案 0 :(得分:0)

我认为jquery .data()支持小写的键名。

console.log(jQuery('.typeahead').data('queryurl'));

答案 1 :(得分:0)

data- *属性不支持大写字符。 HTML5规范说:

3.2.3.8使用data- *属性嵌入自定义不可见数据 自定义数据属性是no namespace中的属性,其名称以字符串“data-”开头,连字符后至少有一个字符,与XML兼容,并且不包含U + 0041到U + 005A范围内的字符(拉丁文大写字母A到拉丁文大写字母Z)。

还解释here

这很有效:

console.log(jQuery('.typeahead').attr('data-queryurl'));
console.log(jQuery('.typeahead').data('queryurl'));