这似乎应该是如此简单,但由于某种原因我不能让它工作。我想得到一个点击元素的id。
元素:
<i id="fav6" onclick="changefave()" style="color: #DDD;" class="fa fa-star-o"></i>
js:
function changefave(){
alert(this.id);
}
目前正在回归,'未定义'。
注意:元素id是动态生成的。
由于
答案 0 :(得分:2)
您可以更改onclick
标记的<i>
属性,如: -
onclick="changefave(this);"
和函数如:
function changefave(obj) {
alert(obj.id);
}
答案 1 :(得分:1)
你可以试试这个
function changefave(obj) {
alert(obj.id);
}
HTML
<i id="fav6" onclick="changefave(this)" style="color: #DDD;" class="fa fa-star-o">something</i>
答案 2 :(得分:0)
in html
<i id="fav6" onclick="changefave(this)" style="color: #DDD;" class="fa fa-star-o"></i>
在js中
function changefave(this){
alert(this.id);
}
或 jQuery 你可以做
在html中删除内嵌onclick
<i id="fav6" style="color: #DDD;" class="fa fa-star-o"></i>
和脚本将
$(document).ready(function(){
$("#fav6").click(function(){
alert($(this).attr("id");
});
});
答案 3 :(得分:0)
最好不要使用内联JavaScript。所以,你的HTML应该是
<i id="fav6" style="color: #DDD;" class="fa fa-star-o"></i>
然后,在JavaScript中:
$(function() { // waits for document and jQuery to load
$('#fav6').on('click', function() {
alert( $(this).prop('id') );
});
});
答案 4 :(得分:0)
尝试这样的事情
HTML CODE
<i id="fav6" onclick="changefave(this);" style="color: #DDD;" class="fa fa-star-o"></i>
JAVASCRIPT CODE
function changefave(obj){
alert(obj.id);
}
答案 5 :(得分:0)
您需要将它与“this”指针一起作为函数调用中的参数传递。
Hence your code in html should be
<i id="fav6" onclick="changefave(this)" style="color: #DDD;" class="fa fa-star-o"></i>
And the javascript function should be
function changefave(ele)
{
// here ele refers to the called element
alert(ele.id);
}
Refer to this link to know more about 'this'
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this