【发布时间】:2014-08-05 10:29:56
【问题描述】:
对于网站 已定义用户控件 (ascx) 来为用户提供计算帮助。 该控件在另一个 ascx 控件中多次实现,该控件是 umbraco 网站的一部分。
用户控件中的某些面板已被隐藏,我正在尝试通过使用 java 脚本来显示它们。
选择要显示的面板的asp代码:
<asp:Panel ID="firstpanel" runat="server">
<asp:RadioButtonList ID="rblSelect" runat="server" RepeatDirection="Vertical" >
<asp:ListItem Text="Show hidden" Value="0" onclick="ShowMe('<%= hiddenPan.ClientID %>');" ></asp:ListItem>
<asp:ListItem Text="Show other" Value="1" onclick="ShowMe('<%= otherPan.ClientID %>');" ></asp:ListItem>
</asp:RadioButtonList>
</asp:Panel>
<asp:Panel ID="hiddenPan" runat="server" style="display:none">
<!-- stuff to work with -->
</asp:Panel>
javascript代码如下:
function ShowMe(showPanel) {
console.log(showPanel);
$('#' + showPanel).show();
}
此方法无效。控制台日志返回值 而不是我期望的 clientID。
我尝试过的解决方案: 实现静态客户端 ID -> 因为 ascx 控件被实现了多次,这将导致 javascript 显示和隐藏它找到的第一个控件,而不是活动控件。
我已经尝试过Link 中的解决方案,但它对我不起作用。
我的问题是如何在示例中切换面板的显示。也欢迎一个好的解决方法。
【问题讨论】:
-
这很奇怪。能否检查一下这段代码是否在IIS下动态运行?
-
我能在 IIS 中看到吗?
-
如果这段代码在
ASPX页面中运行,并且该页面在定义为应用程序的虚拟目录中,那么可以。 -
我查过,是的,它是动态运行的
-
这是我问的一个愚蠢的问题!打扰一下。我正在寻找一种方法
标签: javascript asp.net