45

如何使用 javascript 或 jquery 获取自定义属性的值?

<strong id="the id" original-title="I NEED THIS">

我试过.getAttribute() and attr()..(Javascrupt & jQuery) 没有成功任何想法?

4

9 回答 9

62

不要在 id 中使用空格。

添加自定义属性会使您的 html 无效。改用data-attributes

<strong id="the_id" data-original-title="I NEED THIS">

$('#the_id').data('original-title');

http://jsbin.com/akoyut/2/edit

于 2012-09-01T08:55:29.140 回答
57

将“id”更改为“the_id”。

您可以使用纯 javascript 来做到这一点:

document.getElementById("the_id").getAttribute("original-title");
于 2012-09-01T09:00:03.853 回答
18

像这样使用的最佳方式:

jQuery(this).attr('original-title');
于 2013-11-20T06:21:53.407 回答
3

您可以使用以下语法获取值

$('#theid').attr('original-title');
于 2012-09-01T08:48:18.637 回答
2
a var DateofEvent = $('[data-original-title=I NEED THIS]').val();
于 2014-08-19T06:30:15.507 回答
1

如果必须在 id 中使用空格,则检索元素和属性值,如下所示:

$('[id="the id"]').attr([some attribute string]);
//or
$('#the\\ id').attr([some attribute string]);

对于自定义属性,最好使用 HTML5data-[somelabel]属性,它是向后兼容和标准化的。所以在你的情况下是这样的:

<strong id="the id" data-originalTitle="I NEED THIS">

阅读有关数据属性的更多信息

于 2012-09-01T08:59:01.540 回答
1

我这样做是因为我在 foreach 中需要它

$(this).data('original-title')
于 2018-09-13T07:42:53.910 回答
0
$('#the<remove space from here>id').attr('original-title');
于 2012-09-01T08:49:01.410 回答
0

以下是一个工作示例:

Javascript:

$(document).ready(function() {    
  var title = $("#the_id").attr("original-title");
}

html:

<strong id="the_id" original-title="I NEED THIS"></strong>
于 2012-09-01T08:57:51.797 回答