【发布时间】:2011-01-19 21:52:48
【问题描述】:
我单击表格单元格中的链接。我需要在同一表格行中获取特定单元格的值。
<tr>
<td class="one">this</td>
<td class="two">that</td>
<td class="three">here</td>
<td class="four"><a href="#">there</a></td>
</tr>
<tr>
<td class="one">qwqw</td>
<td class="two">dfgh</td>
<td class="three">ui</td>
<td class="four"><a href="#">there</a></td>
</tr>
我有一个点击处理程序附加到第四个单元格中的链接。该单击处理程序调用一个打开模式窗口的函数。当提交模式中的表单时,我还想将 td class="two" 的值从单击链接的行传递到此模式。
这是发送模态的函数(问题区域正在为 var Something 获取正确的值):
var Send = function() {
var Name = $( '#name' ).val();
var Something = $(this).closest('td').siblings('.two').text(); // version 1. doesn't work
var Something = $(this).closest('tr').siblings('td.two').text(); // version 2 also doesn't work
var Something = $(this).attr('class'); // version 3. just a test but also doesn't work
$.ajax( {
async: false,
data: { name: Name, somedata: Something },
type: 'POST',
url: the url
});
};
问题是我无法获得Something 的正确值。应该是与被点击元素在同一行的 td class=two 的值。
这一切结合在一起的方式是。单击目标链接,该链接调用名为 Send_Click() 的方法。 Send_Click 进行一些验证,然后调用 Send() 但从未填充 Something 的值。这是因为this 不是我想的那样吗?哎呀!
【问题讨论】: