无法选择添加的元素

时间:2016-10-15 16:03:30

标签: javascript jquery

我在做一些练习时遇到了这个问题。无法选择最近添加的第二个按钮,并且无法调用警报方法

$('#but').click(function() {
  $('#but').after('<button id="but2">Кнопка 2</button');
});
$('#but2').click(function() {
  alert('something');
});

只有这个HTML代码:

<button id="but">Кнопка 1</button>

3 个答案:

答案 0 :(得分:1)

您的htmlString在结束标记上缺少>

.after('<button id="but2">Кнопка 2</button');
                                          ^

并为动态元素使用事件委托:

$(document).on('click','#but2',function(){
   alert('something');
});

答案 1 :(得分:0)

您已动态添加按钮。并且直接点击事件将无效。

试试这个:

$(".qty").on('input', function () {
    var self = $(this);
    var unitVal = self.next().val();
    self.next().next().val(unitVal * self.val());
    fnAlltotal();
});
$(".unit").on('input', function () {
    var self = $(this);
    var qtyVal = self.prev().val();
    self.next().val(qtyVal * self.val());
    fnAlltotal();
});
function fnAlltotal(){
    var total=0
    $(".amount").each(function(){
        total += parseFloat($(this).val()||0);
    });
    $(".result").val(total);
}

答案 2 :(得分:0)

您可以使用它来选择第二个按钮

$('#but').eq(2).click(function() {
  alert('something');
});