获取单击按钮的ID

时间:2014-09-27 13:10:57

标签: javascript jquery html

所以,我一直在摸不着头脑,拿到点击按钮的ID,但无法正确使用。它总是返回undefined

这是小提琴:http://jsfiddle.net/thinkinbee/mx0rb5cy/

有什么东西我没有包含在我的小提琴中吗? 。我的JS代码有什么问题吗?

我参考了之前的问题,但似乎没有任何效果。我尝试同时实施$(this).attr("id")this.id,但没有正面结果。

此外,在更长的时间里,我的所有按钮都会动态出现。我还需要处理一些额外的事情吗?

5 个答案:

答案 0 :(得分:6)

如果按钮是动态的,您应该使用document.on。

我让你的小提琴像这样工作:http://jsfiddle.net/1ehy66k9/

$(document).on('click', '.ui-btn', function() {
  alert("Clicked with Id "+$(this).attr('id'));
});

答案 1 :(得分:2)

您应该将this作为参数传递:

<a class="ui-btn ui-btn-inline ui-mini" id="check" onclick="chkAlert(this)">click me</a>
var chkAlert = function(elem){
    alert("Clicked with Id "+$(elem).attr('id'));
    alert("Clicked with Id "+elem.id);
};

JSFiddle Demo

答案 2 :(得分:1)

试试这个 -

HTML -

<a class="ui-btn ui-btn-inline ui-mini" id="check" onclick="chkAlert(this)">click me</a>

JavaScript -

var chkAlert = function(t){
    alert("Clicked with Id "+$(t).attr('id'));

};

http://jsfiddle.net/mx0rb5cy/6/

答案 3 :(得分:1)

您需要将该按钮作为变量this发送到函数中:

<a class="ui-btn ui-btn-inline ui-mini" id="check" onclick="chkAlert(this)">click me</a>

然后在函数内部接收它(你可以在函数内部任意命名)

var chkAlert = function(caller){
    alert("Clicked with Id "+caller.id);
};

Example

答案 4 :(得分:1)

你可以将id传递给函数,如 onclick =&#34; chkAlert(this.id)&#34; ,请尝试如下所示

<a class="ui-btn ui-btn-inline ui-mini" id="check" onclick="chkAlert(this.id)">click me</a>


var chkAlert = function(id){
    alert("Clicked with Id "+id);
    alert("Clicked with Id "+id);
};