3

dynamically创建了几个(内部循环),html buttons例如:

sb.Append("<input type=\"button\"  name=\"deleteimage" + id 
              + " \" id=\"btndelete" + id 
              + "\" value=\"Delete\" class=\"t-button t-grid-delete\" " 
              + " style=\"margin-left:10px;\" />");

我想得到我使用id的那个buttonclickjquery

帮我

谢谢

4

5 回答 5

3

使用.on() (jQuery 1.7+) 或.delegate() (jQuery 1.6 及更低版本)委托

$('body').on('click','input[type=button]',function(){
     alert(this.id); // <-- this refers to current clicked input button
});

或者

$('body').delegate('input[type=button]','click',function(){
     alert(this.id);
});

或者无论你的 sb 元素是什么,都用它替换 body,因为它存在于 dom 负载上

于 2012-08-23T13:37:40.937 回答
1

怎么样

$('input:button').click(function(){
    alert('Clicked ' + this.id);
于 2012-08-23T13:38:57.507 回答
1

试试这个

$("input[type=button]").click(function()
{
    alert(this.id);
});
于 2012-08-23T13:43:04.850 回答
1

您可以尝试以下方法:

$(document).click(function(event) { 
        var target = event.target;      
        if ($(target).hasClass("t-grid-delete")) { // check if element has class t-grid-delete is your button
            var targetId =  $(target).attr("id");
            // set your image id with attribute like image_id
            // it take easy to get image id $(target).attr("image_id")
        }
    });
于 2012-08-23T13:43:37.363 回答
0

对动态生成的 html 元素的事件使用“live”事件

$("input[type=button]").live('click',function()
{
    alert(this.id);
});
于 2012-08-24T18:05:02.693 回答