如何将TragetContriID
设置为HyperLink
内的GridView
?
我试过了:
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
PopupControlID="Panel1"
CancelControlID="btnCancel"
OnCancelScript="HideModalPopup()"
TargetControlID="GridView1$HyperLink1">
</asp:ModalPopupExtender>
但我有一个错误:没有GridView1$HyperLink1
答案 0 :(得分:8)
单击控件时,设置TargetControlID
的{{1}}基本上会触发该ModalPopup的客户端显示功能。所以你需要自己连接控件。
首先,由于ModalPopupExtender
需要ModalPopupExtender
,您应该添加一个虚拟控件来将模态弹出窗口链接到:
TargetControlID
并将<asp:Button runat="server"
ID="HiddenTargetControlForModalPopup"
style="display:none"/>
ModalPopupExtender
与其相关联
TargetControlID
所以<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
PopupControlID="Panel1"
CancelControlID="btnCancel"
OnCancelScript="HideModalPopup()"
TargetControlID="HiddenTargetControlForModalPopup">
</asp:ModalPopupExtender>
现在有一个什么都不做的目标。现在我们现在需要做目标的工作。您需要一个javascript函数来显示客户端的ModalPopup。
ModalPopupExtender
然后,您应该将<script type="text/javascript">
var ModalPopup='<%= ModalPopupExtender1.ClientID %>';
function ShowModalPopup() {
// show the Popup
$find(ModalPopup).show();
}
</script>
中控件的OnClientClick
事件映射到此javascript函数。从您的代码中,我发现您使用gridview
,我认为它不支持asp:HyperLink
事件,因此您可能需要将其切换为OnClientClick
。
asp:LinkButton