我有一个带链接的网格,我想要实现的是点击链接时,打开一个模态窗口。我的模态正常运作。我只是在获取链接做某事时遇到了问题。下面是我的示例代码。
ASPX:
<asp:GridView AutoGenerateColumns="False" Width="100%" ID="grvUsers" runat="server">
<Columns>
<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
<asp:LinkButton ID="Label1" runat="server" Text='<%# eval("ID") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
HTML渲染:
<table cellspacing="0" rules="all" border="1" id="grvUsers" style="width: 100%; border-collapse: collapse;">
<tr>
<th scope="col">Delete</th>
</tr>
<tr>
<td>
<span id="grvUsers_Label1_0">23</span>
</td>
</tr>
</table>
jQuery的:
$(document).ready(function(){
$('td:nth-col(0)').click(function(){
alert("OMG");
});
});
答案 0 :(得分:1)
您可以使用:
,而不是尝试使用js添加事件<asp:LinkButton ID="Label1" onClick="myAlertFunction();" runat="server" Text='<%# eval("ID") %>'></asp:LinkButton>
我建议你查看这个jquery文档: Jquery Dialog w/Modal
答案 1 :(得分:0)
你可以使用ajax作为模态弹出窗口,比使用jquery库更好地工作(有例外..)
您可以使用a select命令字段作为删除并在SelectIndexchanging中处理事件或删除任何一个。
将此添加到gridview
<asp:CommandField HeaderText="Delete" ButtonType="Link" ShowSelectButton="true"
SelectText='<%# eval("ID") %>' />
代码隐藏:
protected void mygridview_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
//here you can do anything with the id
string id = mygridview.Rows[e.NewSelectedIndex].Cells[1].Text;
mdlPopup.Show();
}
Ajax popup:
<asp:Button id="btnShowPopup" runat="server" style="display:none" />
<ajaxToolkit:ModalPopupExtender
ID="mdlPopup"
runat="server"
TargetControlID="btnShowPopup"
PopupControlID="pnlPopup"
CancelControlID="btnClose"
BackgroundCssClass="Inactive" />
<asp:Panel ID="pnlPopup" runat="server" Width="500px" style="display:none;">
<!--here you put any content that will go inside your popup-->
</asp:Panel>