在我的主页上,我有大约10个网格位于ajax标签等
当用户点击这个时,一个网格特别有一个名为“存档”的链接按钮我需要显示一个带有文本框的单独div,其中用户必须输入一个原因,说明为什么他们不会选择所选信息,但是我的问题是我怎样才能获得需要使用Jquery获得的行的名称和电子邮件,我希望将此信息存储在隐藏字段中,然后从代码后面引用隐藏字段等。
我尝试使用asp:ModalPopUp扩展程序但是当这个网格放在ajax标签内时,模态弹出扩展程序抱怨它可以看到控件链接按钮所以iv决定用户Jquery来获取这两个字段的名称并且有人可以帮我实现这个目标吗?
下面是按下链接按钮时需要获取姓名和电子邮件地址的一个网格
<asp:HiddenField ID="hdnUserFullName" runat="server"/>
<asp:HiddenField ID="hdnUserEmail" runat="server" />
<div id="MainContent_TabControl_body" class="ajax__tab_body" style="height: 100%;
display: block;">
<div id="MainContent_TabControl_tb2" id="MainContent_TabControl_tb2" class="ajax__tab_panel">
<div>
<table cellspacing="0" class="tablesorter" id="MainContent_TabControl_tb2_GrdViewUsers"
style="border-collapse: collapse;">
<thead>
<tr>
<th scope="col">
</th>
<th scope="col">
Full Name
</th>
<th scope="col">
Email
</th>
<th scope="col">
Exam Taken
</th>
<th scope="col">
Date Taken
</th>
<th scope="col">
Exam Total
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a id="MainContent_TabControl_tb2_GrdViewUsers_Edit_0" href="javascript:__doPostBack('ctl00$MainContent$TabControl$tb2$GrdViewUsers$ctl02$Edit','')">
Archieve</a>
</td>
<td>
<a id="MainContent_TabControl_tb2_GrdViewUsers_HyperFullName_0" href="/Authentication/ExamPaper.aspx?uid=1">
Scott Atkinson</a>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblEmail_0">Scott.test@hotmail.co.uk</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblExamTaken_0">True</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblDateTaken_0">30-06-2012</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblExamTotal_0">0</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<asp:HiddenField ID="hdnUserFullName" runat="server"/>
<asp:HiddenField ID="hdnUserEmail" runat="server" />
<div id="MainContent_TabControl_body" class="ajax__tab_body" style="height: 100%;
display: block;">
<div id="MainContent_TabControl_tb2" id="MainContent_TabControl_tb2" class="ajax__tab_panel">
<div>
<table cellspacing="0" class="tablesorter" id="MainContent_TabControl_tb2_GrdViewUsers"
style="border-collapse: collapse;">
<thead>
<tr>
<th scope="col">
</th>
<th scope="col">
Full Name
</th>
<th scope="col">
Email
</th>
<th scope="col">
Exam Taken
</th>
<th scope="col">
Date Taken
</th>
<th scope="col">
Exam Total
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a id="MainContent_TabControl_tb2_GrdViewUsers_Edit_0" href="javascript:__doPostBack('ctl00$MainContent$TabControl$tb2$GrdViewUsers$ctl02$Edit','')">
Archieve</a>
</td>
<td>
<a id="MainContent_TabControl_tb2_GrdViewUsers_HyperFullName_0" href="/Authentication/ExamPaper.aspx?uid=1">
Scott Atkinson</a>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblEmail_0">Scott.test@hotmail.co.uk</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblExamTaken_0">True</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblDateTaken_0">30-06-2012</span>
</td>
<td>
<span id="MainContent_TabControl_tb2_GrdViewUsers_lblExamTotal_0">0</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
这是我的Jquery到目前为止,我在那里发出警告,以确保它击中脚本,它是.....
$(document).ready(function () {
$('#MainContent_TabControl_tb2_GrdViewUsers_Edit_0').click(function () {
alert('hello');
$('#dvArchive').show();
$('#MainContent_hdnUserFullName').val() == 'Value of the grid view column';
$('#MainContent_hdnUserEmail').val() == 'Email Value from the column';
});
});
只需要一些帮助,引用全名列和电子邮件列,用需要存档的行的值填充隐藏字段.....
更新这是我的修订版Jquery
任何帮助将不胜感激.......
$(document).ready(function () {
$('#MainContent_TabControl_tb2_GrdViewUsers_Edit_0').click(function () {
alert('hello');
$('#dvArchive').show();
$('#MainContent_hdnUserFullName').val() == 'Value of the grid view column';
$('#MainContent_hdnUserEmail').val() == 'Email Value from the column';
});
});
我给了链接按钮classname .ClickMe用于测试目的以及Full Name都有类.Username和Email作为类.Email
答案 0 :(得分:1)
您需要的是一个名为closest()
的jquery方法,它搜索从元素本身向上的DOM,以查找与给定条件匹配的父级。
在您的情况下,您需要找到点击链接所在的网格行(tr
)。然后从该行中提取您的名字等。
你还有两个错误:
=
而不是==
。.val(value)
而不是.val() == value
。:
$(document).ready(function () {
$('.Archive-Button').click(function () {
var tr = $(this).closest("tr");
var UserName = tr.find('.UserName').text();
var Email = tr.find('.Email').text();
$('#MainContent_hdnUserFullName').val(UserName);
$('#MainContent_hdnUserEmail').val(Email);
return false;
});
});