获取html元素的onclick事件的data- *属性
<a id="option1" data-id="10" data-option="21" href="#" onclick="goDoSomething(?,?);"> Click to do something </a>
我想获得函数goDoSomething(10, 21)
内的data-id
和data-option
值我试图使用this
引用: this.data['id']
但它没有工作。
我怎样才能做到这一点?
你可以使用jQuery实现这个$(identifier).data('id')
,
<script type="text/javascript"> function goDoSomething(identifier){ alert("data-id:"+$(identifier).data('id')+", data-option:"+$(identifier).data('option')); } </script> <a id="option1" data-id="10" data-option="21" href="#" onclick="goDoSomething(this);"> Click to do something </a>
javascript :如果你想使用javascript标签,你可以使用getAttribute("attributename")
,
<script type="text/javascript"> function goDoSomething(d){ alert(d.getAttribute("data-id")); } </script> <a id="option1" data-id="10" data-option="21" href="#" onclick="goDoSomething(this);"> Click to do something </a>
要么:
<script type="text/javascript"> function goDoSomething(data_id, data_option){ alert("data-id:"+data_id+", data-option:"+data_option); } </script> <a id="option1" data-id="10" data-option="21" href="#" onclick="goDoSomething(this.getAttribute('data-id'), this.getAttribute('data-option'));"> Click to do something </a>
喜欢这个:
$(this).data('id'); $(this).data('option');
工作示例: http : //jsfiddle.net/zwHUc/
我简单地使用这个jQuery技巧:
$("a:focus").attr('data-id');
它获得a
元素的焦点,并从中获取data-id
属性。
这里是一个例子
<a class="facultySelecter" data-faculty="ahs" href="#">Arts and Human Sciences</a></li> $('.facultySelecter').click(function() { var unhide = $(this).data("faculty"); });
这将设置var unhide为ahs,所以使用.data(“foo”)来获得你想要获得的data- *属性的“foo”值
用户$()
从你的链接和data()
获取你的价值观的jQuery
对象
<a id="option1" data-id="10" data-option="21" href="#" onclick="goDoSomething($(this).data('id'),$(this).data('option'));"> Click to do something </a>