获取单击元素的ID名称

时间:2013-11-19 07:19:15

标签: javascript jquery

这似乎应该是如此简单,但由于某种原因我不能让它工作。我想得到一个点击元素的id。

元素:

<i id="fav6" onclick="changefave()" style="color: #DDD;" class="fa fa-star-o"></i>

js:

function changefave(){
alert(this.id);
}

目前正在回归,'未定义'。

注意:元素id是动态生成的。

由于

6 个答案:

答案 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>

DEMO

答案 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