这是我的jquery代码;但它给了我(未定义)。
$(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>
问题是您的锚标签
<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>
我的猜测是你的这超出了范围。
尝试将范围传递到您的函数中,如下所示:
$(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>