在jquery中删除带有子元素的div

时间:2014-11-27 12:09:10

标签: javascript jquery

我有一个方法,我需要用clink中的元素删除当前div。但它没有做任何事情。我搜索了护目镜并应用了各种各样的东西,但没有结果。请问有人可以帮我吗?!!!以下是我的代码::

我的div其中我的元素和删除链接已声明>>>

<div class="col-xs-4 pNorPpl" id="pPeople">
            <div class="form-group">
                <label for="participatedPeopleName"><g:message code="sl" default="সদস্যের নাম" /></label>
                <g:textField id="participatedPeopleName" name="participatedPeopleName" class="form-control"/>
                <a onclick="addAnotherNormalPeople()">Add More</a> ||
                <a onclick="removeThisMember()">Remove</a>
            </div>
        </div>

我的删除功能&gt;&gt;&gt;

function removeThisMember(){
    $(this).closest('.pNorPpl').remove();
}

2 个答案:

答案 0 :(得分:2)

当您使用this属性时,on*的上下文无法执行。相反,你需要传递它:

<a onclick="removeThisMember(this)">Remove</a>
function removeThisMember(el) {
    $(el).closest('.pNorPpl').remove();
}

或者您可以通过jQuery附加您的活动:

<a href="#" class="remove-link">Remove</a>
$('.pNorPpl').on('click', '.remove-link', function(e) {
    e.preventDefault();
    $(this).closest('.pNotPpl').remove();
});

答案 1 :(得分:0)

尝试使用此解决方案: http://jsbin.com/tuniyucuki/1

<强> HTML

<div class="col-xs-4 pNorPpl" id="pPeople">
        <div class="form-group">
            <label for="participatedPeopleName"><g:message code="sl" default="সদস্যের নাম" /></label>
            <g:textField id="participatedPeopleName" name="participatedPeopleName" class="form-control"/>
            <a onclick="addAnotherNormalPeople()">Add More</a> ||
            <a class="removeFromHere" >Remove</a>
        </div>
    </div>

<强> JAVASCRIPT

$(document).ready(function(){
  $('.removeFromHere').click(function(){
    $(this).closest('.pNorPpl').remove();
  })
})