0

好的伙计们,所以我有以下结构,10次,这意味着10个表格。 $('button')如您所知,将处理任何按钮的事件。

<div>
  <form ...>
    <div><button type='button'>Submit</button></div>
    <div><input /></div>
    <div><input /></div>
    <div><input /></div>
    <div><input /></div>
  </form>
</div>

<form>仅使用 JQuery 及其遍历方法,$(this)当我单击按钮时如何获取?

我之前混合使用了 parent()、prev() 等,但无法得到它。例如,$(this).closest('form').nodeName在警报弹出窗口中给出“未定义”。

4

3 回答 3

1

use

  $(':button').closest('form')

UPDATE

$(':button').click(function(){
    alert($(this).closest('form').attr('class'));
});
于 2012-11-15T11:43:41.010 回答
1

这肯定会起作用:

 $('button').click(function(){
     alert($(this).closest('form').attr('id'));
 });
于 2012-11-15T11:55:49.797 回答
0

你有没有尝试过

$('button').parents('form:first').get(0).nodeName;

像这样

$('button').click(function(){
    alert($(this).parents('form:first').get(0).nodeName);
});​

演示

更新:

你可以submit像这样简单

$('button').click(function(){
     $(this).parents('form:first').get(0).submit();
});​
于 2012-11-15T11:44:22.443 回答