Javascript 从HTML表jQuery中获取值
我有一个包含以下值的HTML表:Javascript 从HTML表jQuery中获取值,javascript,jquery,html-table,Javascript,Jquery,Html Table,我有一个包含以下值的HTML表: <tr class="tuker1"> <td class="tuker-lft1"> Username </td> <td class="tuker-rght1" onclick="awardRoute()"> <a href="#"> AWARD ROUTE </a> </td> </tr> 关于如何实现
<tr class="tuker1">
<td class="tuker-lft1">
Username
</td>
<td class="tuker-rght1" onclick="awardRoute()">
<a href="#">
AWARD ROUTE
</a>
</td>
</tr>
关于如何实现这一点,您有什么想法吗?假设页面上只有一个元素的类
tuker-lft1
:
var username = $(".tuker-lft1").val()
function awardRoute() {
var username = $('.tuker-lft1').text();
}
如果需要上一个单元格(即左侧单元格)的文本,可以使用同级树遍历函数:
function awardRoute() {
var username = $(this).prev('td').text();
}
$('.tuker-rght1').click(awardRoute);
function awardRoute() {
var username = $(this).parent().children('.tuker-lft1').text();
}
$('.tuker-rght1').click(awardRoute);
如果希望单元格中的文本与所单击的单元格位于同一行内,而不管单元格位于何处,请使用父/子树遍历函数:
function awardRoute() {
var username = $(this).prev('td').text();
}
$('.tuker-rght1').click(awardRoute);
function awardRoute() {
var username = $(this).parent().children('.tuker-lft1').text();
}
$('.tuker-rght1').click(awardRoute);
请注意,在最后两个示例中,您应该从HTML中删除onclick属性。您可以像这样获取它:
<td class="tuker-rght1" onclick="$(this).parents('tr').find('td:eq(0)').html()"><a href="#"> AWARD ROUTE </a> </td>
用户名
$(函数(){
$('.tuker-rght1')。关于('click',函数(e){
e、 预防默认值();
var username=$(this.prev().html();
console.log(用户名);
});
});
使用以下方法:
var username = $(this).closest('tr').find('.tuker-lft1').text();
请参阅
标记:
<table>
<tr>
<td>
Username
</td>
<td class="award">
Award
</td>
</tr>
</table>
您需要纯js或jQuery解决方案就可以了?
.val()
?我认为这只适用于输入这不是你所认为的is@charlietfl谢谢,修复了。您必须将此
作为标记的参数传递,然后使用awardRoute(elem){$(elem).prev()…}
var awards = [].slice.call(document.querySelectorAll('.award'));
awards.forEach(function(award){
award.addEventListener('click', function(e){
var parentNode = this.parentNode;
var username = parentNode.querySelector('td').innerHTML;
alert(username);
});
});