MasterPage 方案的 CollapsiblePanelExtender 控件的 $find 上的 Javascript 错误

发布于 2024-10-11 20:33:51 字数 475 浏览 5 评论 0原文

我有一个内容页面和一个用户控件。用户控件使用 CollapsiblePanelExtender。我在面板的“onmouseout”上编写了以下 javascript 函数。

<script language="javascript" type="text/javascript">
function doToggle() 
{
var cpe = $find("CollapsiblePanelExtender1.ClientID");
//cpe._toggle();
if (!cpe.get_Collapsed()) { 
cpe._doClose();
}
}
</script>

此内容页是母版页的一部分。当我运行代码时,我收到 javascript 错误。 cpe 始终为空。如何在母版页场景中使用$find for CPE?我还尝试了 document.getElementById 并传递了客户端 id,但仍然不起作用。请帮忙。

I have a content page and a user control. The usercontrol uses CollapsiblePanelExtender. I have written the following javascript function on "onmouseout" of the panel.

<script language="javascript" type="text/javascript">
function doToggle() 
{
var cpe = $find("CollapsiblePanelExtender1.ClientID");
//cpe._toggle();
if (!cpe.get_Collapsed()) { 
cpe._doClose();
}
}
</script>

This conent page is part of master page. When I run the code I get javascript error. cpe is always null. How to use $find for CPE for a master page scenario? I also tried document.getElementById and passed the client id, still it didn't work. Please help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

葵雨 2024-10-18 20:33:51

通过将BehaviorID="cpe" 添加到 CollapsiblePanelExtender 解决了问题。

<ajax:CollapsiblePanelExtender ID="cpe" runat="Server" BehaviorID="cpe"
    TargetControlID="SettingsContentPanel" CollapsedSize="0" Collapsed="True" ExpandControlID="SettingsTitlePanel"
    CollapseControlID="SettingsTitlePanel" ScrollContents="False" ImageControlID="btnSettingsPopup"
    SuppressPostBack="true" ExpandedImage="~/images/collapse.jpg" CollapsedImage="~/images/expand.jpg"
    ExpandDirection="Vertical" AutoCollapse="false" AutoExpand="false" />

然后$find函数就能找到该控件,代码如下:

function doToggle() 
{
    var cpe = $find("cpe");
    if (!cpe.get_Collapsed())
    { 
        cpe._doClose();
    }
}

Problem resolved by adding BehaviorID="cpe" to CollapsiblePanelExtender.

<ajax:CollapsiblePanelExtender ID="cpe" runat="Server" BehaviorID="cpe"
    TargetControlID="SettingsContentPanel" CollapsedSize="0" Collapsed="True" ExpandControlID="SettingsTitlePanel"
    CollapseControlID="SettingsTitlePanel" ScrollContents="False" ImageControlID="btnSettingsPopup"
    SuppressPostBack="true" ExpandedImage="~/images/collapse.jpg" CollapsedImage="~/images/expand.jpg"
    ExpandDirection="Vertical" AutoCollapse="false" AutoExpand="false" />

And then $find function will be able to find the control, code like:

function doToggle() 
{
    var cpe = $find("cpe");
    if (!cpe.get_Collapsed())
    { 
        cpe._doClose();
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文