通过单击 jquery 中的按钮提醒 src

alert an src by clicking a button in jquery

这是我的 jquery 代码;但它给了我 (undefined).

$(document).ready(function(){
    $('.items > tbody > tr').click(function() {
        var src = $(this).find('a[title="View"]').attr('src');
        alert (src)
    });
});

HTML代码是:

<table class="items">
<tbody>
    <tr>
        <td></td>   
        <td></td>   
        <td></td>   
        <td></td>
        <a title='View' src="main.php"></a> 
        <a title='find' src="index.php"></a>    
    </tr>
</tbody>

我猜你的这超出了范围。

尝试像这样将范围传递给您的函数:

$(document).ready(function(){
    $('.items > tbody > tr').click(() => {
        var src = $(this).find('a[title="View"]').attr('src');
        alert (src)
    });
});
tr{
  background:#ff8800;
  height:40px;
}
table{
  width:100%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="items">
<tbody>
        <td></td>   
        <td></td>   
        <td></td>  
          <a title='View' src="main.php"></a> 
          <a title='find' src="index.php"></a>
        <td></td>
        <td></td>
</tbody>

问题是您的锚标签 <a> 不在 <tr> 系列中。您必须将它们带入 <td> 以便它们成为 <tr>

的子代

$(document).ready(function(){
    $('.items > tbody > tr').click(function() {
        var src = $(this).find('a[title="View"]').attr('src');
        alert (src)
    });
});
tr{
  background:#ff8800;
  height:40px;
}
table{
  width:100%;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="items">
<tbody>
    <tr>
        <td></td>   
        <td></td>   
        <td></td>   
        <td></td>
        <td>
          <a title='View' src="main.php"></a> 
          <a title='find' src="index.php"></a>
        <td>
    </tr>
</tbody>