我有一个 ajax 调用附加到表行内图片的单击事件。单击图片并启动单击事件后,我需要获取第一个和第二个td
该行中的元素。我是 jQuery 新手,所以下面是我的最新尝试(不起作用..)。变量firstName
and lastName
两者最终都是undefined
执行这些行之后
$('.checkErrors').click(function () {
var firstName = $(this).parent('tr td:first-child').val();
var lastName = $(this).parent('tr td:nth-child(2)').val();
$.ajax({
type: 'GET',
url: '@Url.Action("GetErrors","AgentTransmission")',
data: { term: $(this).attr('id') },
.
.
});
});
这是一个示例表行。最后一张图片td
元素包含.click
事件。我想抓取包含文本“phineas”和“ferb Seven”的前两个。
<tr>
<td>
phinneas
</td>
<td>
ferbseven
</td>
<td nowrap>
7735
</td>
<td>
Agent
</td>
<td>
SAF
 
07070900
</td>
<td>
6/5/2013 10:35:38 AM
</td>
<td>
DANTAK
</td>
<td class="errorPlus">
Error
</td>
<td>
<a href="/AgentTransmission/Details/2358">Details</a>
<span> | </span>
<a href="/AgentTransmission/Edit/2358">Edit</a>
</td>
<td align=center id=2358>
<img src="/Content/images/magnify.gif" class="checkErrors" id=2358 alt="Program Details" />
</td>
</tr>
use closest http://api.jquery.com/closest/
var $tr = $(this).closest(´tr´);
var firstName = $tr.find('td:first-child').text();
var lastName = $tr.find('td:nth-child(2)').text();
另外,你需要使用text
代替val
for td
元素,因为它仅对输入控件有意义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)