[英].net Accordion Causing me Problems
我根據網頁中的操作顯示,隱藏,啟用和禁用了一堆控件。 一切正常,直到我將它們放入手風琴。 現在,我無法獲取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個對象一樣隱藏
有人有主意嗎?
手風琴的默認狀態是什么? 崩潰了? 我不知道手風琴的工作方式,但是我懷疑它正在修改HTML DOM,以使頁面首次加載時“ btmRocp”實際上不在頁面本身上出現,直到它變為“可見”為止。 也就是說,它可能是根據手風琴狀態將控件注入到頁面中或從頁面中注入。
解決此問題的最佳選擇是插入“調試器”。 語句在適當的時候插入到頁面中,以在這些時間點檢查實時DOM。
<textbox id="debugbox" onblur="this.value = eval(this.value);"></textbox>
這也是在頁面上使用腳本的好方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.