2016-07-29 14 views
1

trタグのイベントリスナーを持つテーブル内のどの場所を右クリックするかを試行していて、click()コマンドを子供buttonjQueryでクリックされたターゲットの子要素を特定する

jQuery(".catcher").contextmenu(function (e) { 
 
    e.target.**FIND CHILD BUTTON**.click(); 
 
});
table { 
 
    border: 1px solid red; 
 
    width: 200px; 
 
    height: 200px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr class="catcher"> 
 
    <td> 
 
     <span> 
 
      <button onclick="alert('it works!');">Button</button> 
 
     </span> 
 
    </td> 
 
    </tr> 
 
</table>

答えて

3

を使用任意の深さ

jQuery(".catcher").contextmenu(function(e) { 
 
    $(this).find('button').click(); 
 
    return false; 
 
});
table { 
 
    border: 1px solid red; 
 
    width: 200px; 
 
    height: 200px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr class="catcher"> 
 
    <td> 
 
     <span> 
 
      <button onclick="alert('it works!');">Button</button> 
 
     </span> 
 
    </td> 
 
    </tr> 
 
</table>

2

jQuery(".catcher").contextmenu(function (e) { 
 
    //e.target.**FIND CHILD BUTTON**.click(); 
 
    $(e.target).find('button').click() 
 
});
table { 
 
    border: 1px solid red; 
 
    width: 200px; 
 
    height: 200px; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr class="catcher"> 
 
    <td> 
 
     <span> 
 
      <button onclick="alert('it works!');">Button</button> 
 
     </span> 
 
    </td> 
 
    </tr> 
 
</table>

$()でラップe.targetその後、あなたは最初の子研のためのjQuery find方法のウィッヒ検索を使用する必要が.find('button')

0

でANCEは数量がクラス名

($(e).parent().parent().find(".Qty").val() 
あり、ここでこれを参照してください。
関連する問題