【问题标题】:Remove a dynamically added element without using on()删除动态添加的元素而不使用 on()
【发布时间】:2016-05-16 16:20:58
【问题描述】:

我有一个内置流星 js 的页面,但我无法访问 on()。我有这个div

<div class="row crud">

</div

我正在像这样向它添加元素

$( ".crud" ).append('<div class="aor"><div class="col-md-3"><div class="form-group"><label>'+v+'    <i class="icon-cancel-square2"></i> </label><input type="text" name="results_'+v+'" class="form-control" placeholder="'+v+'"></div></div></div>');

所有表单元素都有一个.icon-cancel-square2类的删除按钮

'click .icon-cancel-square2': function(){
    alert('that connected');
    $(this).closest(".form-group").remove();
},

警报连接但无法删除。我怎样才能删除一个元素而不必使用 on?。

【问题讨论】:

  • 如果不能使用on()方法,可以用原生的EventTarget.addEventListener()代替吗?
  • 我觉得“我无法访问 on()”需要一些解释,以便更容易提出替代方案。

标签: jquery meteor


【解决方案1】:

使用 Meteorjs,事件的上下文实际上是模板的数据上下文,所以是 this 导致了您的问题。

试试:

'click .icon-cancel-square2': function(event, template){ alert('that connected'); event.target.closest('.form-group').remove(); },

【讨论】:

    猜你喜欢
    • 2017-07-19
    • 1970-01-01
    • 2019-12-29
    • 2016-01-28
    • 1970-01-01
    • 1970-01-01
    • 2013-11-23
    • 1970-01-01
    • 2021-09-26
    相关资源
    最近更新 更多