例如,我有一个HTML表格......
name | grade | action
bob | 1.0 | [button class="button" id='1']
jack | 2.0 | [button class="button" id='2']
john | 3.0 | [button class="button" id='3']
当我点击按钮时,
获取ID ...
$(function(){
$('.button').click(function()
var buttonid = this.id
});
});
所以,如果我按下buttonid 1,如何在不打开数据库的情况下获得名称'bob'?
此外,如果按下按钮,我如何获取每列中的值?即如果我按下按钮3,我如何获得3.0级或获得名称和成绩?
生成表格行的脚本
while(){
echo '<tr>';
echo '<td>'.$name.'</td>';
echo '<td>'.$grade.'</td>';
echo '<td> <input type="button" class="button" id="'.$id'"</td>';
echo '</tr>';
}
答案 0 :(得分:3)
你的问题有点不清楚,但我认为这大致是你正在寻找的东西:
$('#myTable button').click(function ()
{
var $tr = $(this).closest('tr'),
$nameTd = $tr.children('td:first'),
name = $nameTd.text();
alert(name);
});
答案 1 :(得分:3)
最简单的方法(就我而言)是在你的TR元素上使用HTML数据属性并在那里拥有所有数据,然后你就可以使用$(this).closest("tr").data("name");
像:
<tr data-name="bob" data-grade="1.0">
<!-- all your td-elements -->
</tr>
<tr data-name="jack" data-grade="2.0">
<!-- all your td-elements -->
</tr>
答案 2 :(得分:2)
尝试:
$(function() {
$('button').click(function() {
var name = $(this).closest('tr').children().first().text();
// do something with 'name'
});
});
答案 3 :(得分:1)
你的js应该是:
$(function(){
$('button').click(function(){
var text= $(this).parent().siblings('td:first').text();
});
});