gpt4 book ai didi

asp.net - 如何使用 GridView 中的控件在 ModalPopupExtender 中设置 TargetControlID

转载 作者:行者123 更新时间:2023-12-03 22:02:00 25 4
gpt4 key购买 nike

如何设置 TragetContriIDHyperLinkGridView 里面?

我试过这个:

<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
PopupControlID="Panel1"
CancelControlID="btnCancel"
OnCancelScript="HideModalPopup()"
TargetControlID="GridView1$HyperLink1">
</asp:ModalPopupExtender>

但我有一个错误:没有 GridView1$HyperLink1

最佳答案

设置 TargetControlIDModalPopupExtender基本上是在点击控件时触发那个 ModalPopup 的客户端 Show 功能。所以你需要自己连接控件。

一、自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>

所以 ModalPopupExtender现在有一个什么都不做的目标。现在我们需要完成目标的工作。您需要一个 javascript 函数来从客户端显示 ModalPopup。
<script type="text/javascript">
var ModalPopup='<%= ModalPopupExtender1.ClientID %>';

function ShowModalPopup() {
// show the Popup
$find(ModalPopup).show();
}
</script>

那么你应该映射 OnClientClick您的 gridview 中的控件事件到这个 javascript 函数。从您的代码中,我看到您使用了 asp:HyperLink ,我认为它不支持 OnClientClick事件,因此您可能需要将其切换为 asp:LinkButton .
<asp:LinkButton ID="LinkButton1" runat="server" 
OnClientClick="ShowModalPopup()" />

关于asp.net - 如何使用 GridView 中的控件在 ModalPopupExtender 中设置 TargetControlID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5922143/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com