【发布时间】:2008-12-18 17:57:00
【问题描述】:
我有一堆控件,我根据网页中的操作显示、隐藏、启用和禁用这些控件。一切正常,直到我把它们放进手风琴。现在我无法让 Javascript 能够更新它们的状态。我有一个小例子
这是Javascript
<script type="text/javascript">
var ctrl = document.getElementById('<%= btmRocp.ClientID %>');
function ShowPanel(control)
{
alert('<%= btmRocp.ClientID %>');
ctrl.disabled = true;
}
</script>
这是手风琴
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<cc1:Accordion ID="MyAccordion"
runat="Server"
SelectedIndex="0"
>
<Panes>
<cc1:AccordionPane ID="accordianPane0" runat=server>
<Header>Create New Report </Header>
<Content>a
<asp:Button ID="Button1" onmouseup="ShowPanel('') " runat="server" Text="Button" />
<asp:Button ID="btmRocp" runat="server" Text="Button" />
</Content>
</cc1:AccordionPane>
<cc1:AccordionPane ID="accordianPane1" runat=server>
<Header>Create New Report </Header>
<Content>b</Content>
</cc1:AccordionPane>
</Panes>
</cc1:Accordion>
我很想知道我做错了什么,警报会打印出正确的 ID。
如果我将“this”对象传递给函数,我可以禁用该按钮,但我确实需要它来禁用或隐藏 10 个对象
有人有想法吗?
【问题讨论】:
-
你能解释一下你真正想要达到的目标吗??
-
我正在尝试能够从 javascript 访问手风琴中的控件以控制它们的状态,这有意义吗?
-
您是否查看了在浏览器中呈现的页面来源,以确保 ClientID 与 HTML 真正匹配?
-
是的,我确实这样做了,他们确实匹配。
-
好的,我刚刚在riconllc.com/accordian.zip 上传了我的示例代码,如果有人有时间可以帮助我。
标签: asp.net javascript ajax accordion