所以,我一直在摸不着头脑,拿到点击按钮的ID,但无法正确使用。它总是返回undefined
。
这是小提琴:http://jsfiddle.net/thinkinbee/mx0rb5cy/
有什么东西我没有包含在我的小提琴中吗? 。我的JS代码有什么问题吗?
我参考了之前的问题,但似乎没有任何效果。我尝试同时实施$(this).attr("id")
和this.id
,但没有正面结果。
此外,在更长的时间里,我的所有按钮都会动态出现。我还需要处理一些额外的事情吗?
答案 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);
};
答案 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'));
};
答案 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);
};