2016-05-15 65 views
3

我有一个页面内置流星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(); 
}, 

警报所连接,但不能去掉。我如何删除一个元素,而不必使用?

+0

如果您不能使用'在()'方法,你可以使用本机['EventTarget.addEventListener()'](https://开头开发商.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener)呢? –

+1

我觉得像“我无法访问()”需要一些解释,以便更容易地建议替代方案。 – DBS

回答

2

使用Meteorjs事件的上下文实际上是模板的数据上下文,因此它是this导致您的问题在这里。

尝试:

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