javascript - 无法打开ajaxToolkit :ModalPopupExtender with JavaScript

标签 javascript c# asp.net

我正在尝试使用 JavaScript 打开 ajaxToolkit:ModalPopupExtender 但当我运行代码并从崩溃背后的代码调用该函数时,会显示此错误.

JavaScript runtime error: Unable to get property 'show' of undefined or null reference

这是我的 JavaScript:

<script>
    function closeChangeArea() {
        $find('ModalChangeArea').hide();
    }

    function showChangeArea() {
        $find('ModalChangeArea').show();
    }
</script>

这是我的代码:

protected void Btn_Click_Ch_Area(object sender, EventArgs e)
        {
            LinkButton lb = (LinkButton)sender;
            GridViewRow gr = (GridViewRow)lb.NamingContainer;

            Label ToolChange = (Label)gr.FindControl("Lbl_toolg");
            Txt_Tool_Reasign.Text = ToolChange.Text;

            ScriptManager.RegisterStartupScript(this, this.GetType(), "Pop", "showChangeArea();", true);
        }

这是我的ModalPoupExtender

<ajaxToolkit:ModalPopupExtender
        ID="ModalChangeArea"
        runat="server"
        TargetControlID="hid"
        PopupControlID="ChangeArea"
        RepositionMode="RepositionOnWindowResizeAndScroll"
        DropShadow="true"
        PopupDragHandleControlID="moveArea">
    </ajaxToolkit:ModalPopupExtender>

最佳答案

在asp.net中,控件id是动态附加到容器中的,在这种情况下,您将无法使用$find来获取控件,使用asp.net控件的clientid或设置ClientIdMode =“Static”。

尝试下面的代码来访问元素。

$find('<%= ModalChangeArea.ClientID %>').show();
$find('<%= ModalChangeArea.ClientID %>').hide();

关于javascript - 无法打开ajaxToolkit :ModalPopupExtender with JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45056912/

相关文章:

javascript - Z-Index 不适用于画廊

javascript - 类型错误 : Cannot read property 'append' of undefined

c# - 从占位符获取字符串值 C#

c# - 如果 BackgroundTask 看起来空闲(但不是由于非常小的常规工作量),您如何防止它被取消?

c# - 在 c#.net 中设置饼图中的颜色

asp.net - response.redirect 总是一个 http GET 响应吗?

javascript - 无法修复 Mongoose 覆盖模型错误

javascript - .each() 搜索背景颜色

asp.net - DevExpress ASPxPopupMenu : Dynamic Menu Items

asp.net - 我无法让面板中的面板居中