CollapsiblePanelExtender 点击事件
我有一个带有通常的扩展和折叠按钮的 CollapsiblePanelExtender...我希望在扩展器扩展时触发一个单击事件,在扩展器折叠时触发一个不同的单击事件。 但最重要的事件是何时延长。 即使崩溃了,我也能在没有点击的情况下生存。
我在网上搜索到的大多数示例都使用:“CollapsiblePanelExtender”“单击事件”让扩展器基于单击做出反应,甚至在其他地方......
我希望扩展器在单击时触发 JS。
我应该如何去实现这个目标? 我是否问了错误的问题/使用了错误的搜索字符串?
CollapsiblePanelExtender extendatron = new CollapsiblePanelExtender();
extendatron.ID = "cpe" + MenuId;
extendatron.TargetControlID = "pnlContent" + strMenuId;
extendatron.ExpandControlID = "pnlMenu" + strMenuId;
extendatron.CollapseControlID = "pnlMenu" + strMenuId;
extendatron.Collapsed = bCollapsed;
extendatron.TextLabelID = strMenuName;
extendatron.ExpandedText = m_strButtonLabelHide;
extendatron.CollapsedText = m_strButtonLabelShow;
extendatron.ImageControlID = "imglnk" + strMenuId;
extendatron.CollapsedImage = "~/App_Themes/default/nbExpand.gif";
extendatron.ExpandedImage = "~/App_Themes/default/nbCollapse.gif";
extendatron.SuppressPostBack = true;
extendatron.ScrollContents = false;
var extender = $find('extendatron'); //this would be <%=myExtender.ClientID%>
extender.add_collapsed( function() { alert('collapsed'); });
extender.add_expanded( function() { alert('expanded'); });
I have a a CollapsiblePanelExtender with the usual extend and collapse buttons....I would like to have a click event fire off when the extender is extended and a different click event fire off when the extender is collapsed. But the most important event is when it is extended. I could live without a click even on collapse.
Most of the examples I've found online searching using: "CollapsiblePanelExtender" "click event" is having the extender react based on a click even else where...
I want the extender to fire off a JS when clicked.
How should I go about accomplishing this?
Am I asking the wrong question/using the wrong search strings?
CollapsiblePanelExtender extendatron = new CollapsiblePanelExtender();
extendatron.ID = "cpe" + MenuId;
extendatron.TargetControlID = "pnlContent" + strMenuId;
extendatron.ExpandControlID = "pnlMenu" + strMenuId;
extendatron.CollapseControlID = "pnlMenu" + strMenuId;
extendatron.Collapsed = bCollapsed;
extendatron.TextLabelID = strMenuName;
extendatron.ExpandedText = m_strButtonLabelHide;
extendatron.CollapsedText = m_strButtonLabelShow;
extendatron.ImageControlID = "imglnk" + strMenuId;
extendatron.CollapsedImage = "~/App_Themes/default/nbExpand.gif";
extendatron.ExpandedImage = "~/App_Themes/default/nbCollapse.gif";
extendatron.SuppressPostBack = true;
extendatron.ScrollContents = false;
var extender = $find('extendatron'); //this would be <%=myExtender.ClientID%>
extender.add_collapsed( function() { alert('collapsed'); });
extender.add_expanded( function() { alert('expanded'); });
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我假设您正在谈论 ASP.Net AJAX Control Toolkit。 您可以将处理程序添加到折叠和展开的事件中,如下所示:
如果您有任何问题,请告诉我...我已经在各种解决方案中对其中一些对象进行了相当多的自定义。
I assume you're talking about the ASP.Net AJAX Control Toolkit. You can add handlers to the collapsed and expanded events as follows:
Let me know if you have any questions...I've done a fair bit of customizing some of these objects in various solutions.
首先,您需要为用户单击的面板或控件创建一个客户端 (JavaScript)
onClick
事件。因此,输入
onClick="functionName();"
接下来:添加此 javascript。
请注意,加载页面时,有一个隐藏字段是可折叠面板的状态。 这是真的还是假的。 转到页面源并搜索它,您就会找到它。
然后添加:
var ExtenderDocumentHeader = document.getElementById("MainContent_cpeDocumentHeader_ClientState");
单击后,获取此客户端状态,将其保存在 cookie 中,然后就可以开始了!
First, you need to create a client side (JavaScript)
onClick
event for the panel or control users are clicking on.So, go in there type
onClick="functionName();"
Next: Add this javascript.
Notice, when your page is loaded, there is a hidden field that is your collapsible panels state. It will be true or false. Go to page source and search for it you will find it.
Then add:
var extenderDocumentHeader = document.getElementById("MainContent_cpeDocumentHeader_ClientState");
So on click, get this clients state, save it in a cookie and your good to go!