在jquery中传递自我对象

Raj*_*eev 6 jquery jquery-ui jquery-validate jquery-selectors

在下面的代码中如何在validate函数中传递div对象

  <div><input type="text"></input>&nbsp;&nbsp;&nbsp&nbsp;<a href="#" onclick="validate("Hot to pass the div objevt here")"</input> 

   <script>
    function validate()
    {
      .....
      .....
       Finally remove the div   
    }

     </script>
Run Code Online (Sandbox Code Playgroud)

use*_*716 10

HTML:

<div class='elementToRemove'>
    <div>
        <a href="#" onclick="validate(this)">some text</a>???????????????????????
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

JavaScript的:

function validate( elem ) {
    $(elem).closest('div.elementToRemove').remove();
}
Run Code Online (Sandbox Code Playgroud)

validate()函数中,elem将表示<a>接收事件的元素.

然后你可以将它包装在一个jQuery对象中,并用它.closest()来获取第一个<div>祖先,并.remove()它从DOM中删除它,并清理附加的任何数据,比如事件处理程序.

或者最好让jQuery处理你的事件处理程序:

HTML:

<div class='elementToRemove'>
    <div>
        <a href="#" class="someClassName">some text</a>???????????????????????
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$('a.someClassName').click(function() {
    $(this).closest('div.elementToRemove').remove();
});
Run Code Online (Sandbox Code Playgroud)