繁体   English   中英

如何获取在JavaScript中动态创建的Button(onClick)的ID

[英]How to get ID of Button(onClick) which is created dynamically in javascript

如何获取通过使用以下JS创建的按钮的ID。 我想将Button的ID设置为标签的文本。

function addnewsubj(){
var a = $("#subjname").val();

if(a!==""  ){
    $('.techsubj').append(
    '<div class="row sub'+ a +'" id="sub'+ a +'">'+
        '<div class="col-xs-6 col-md-4">'+
            '<a href="#fourth" id="'+ a +'" class="btn btn-info" >'+ a +'</a>'+
        '</div>'+
        '<div class="col-xs-12 col-sm-6 col-md-8">'+
            '<div class="progress">'+
                '<div class="progress-bar progress-bar-warning" role="progressbar" aria-valuenow="60" aria-valuemin="0" aria-valuemax="100" style="width: 60%">'+
                    '<span class="sr-only">60% Complete (warning)</span>'+
                '</div>'+
            '</div>'+
        '</div>'+
    '</div>'
    );
}
else{
    alert("Text Box is empty");
}}

HTML

<label id="subjTitle">  </label>

您在任何地方都没有按钮。 如果您指的是样式为按钮的锚元素,

$('subjTitle').text($('.techsubj .btn').attr('id'))

或者,您始终可以使用ID显式地创建它,或者最重要的是,您可以将内容创建为DOM层次结构而不是HTML源,而只需保留对“ button”对象的引用即可。

对动态事件使用jquery'on'方法。 使用此代码:

$(document).on('click','.btn-info', function(){
  $('#subjTitle').text($(this).attr('id'));
});

如果您使用的jQuery版本低于1.7,则可以对动态元素使用“实时”或“委托”。

这是一个小例子:

HTML:

  <div id='th'></div>

jQuery的:

  $('#th').append('<div id="rock">this is Dynamo</div>');

  alert($($('#th').children('div')[0]).attr('id'));

希望对您有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM