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

时间:2014-03-04 04:29:31

标签: javascript jquery html5 css3

如何获取使用以下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>

3 个答案:

答案 0 :(得分:1)

您在任何地方都没有按钮。如果你的意思是设置为按钮的锚元素,

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

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

答案 1 :(得分:0)

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

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

如果您使用版本低于1.7的jquery,则可以使用“live”或“delegate”作为动态元素。

答案 2 :(得分:0)

这是一个小例子:

HTML:

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

<强> Jquery的:

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

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

它可以帮到你!