2012-05-28 104 views
2

我試圖找到控件並在RadCombobox的onclientselectedindexchanged事件中設置爲「block」或「none」。它總是返回null。腳本和控件位於「內容的用戶控制」頁面中。此內容頁面也有Master頁面。我用Debugger語句調試了代碼,但控件有這個標籤。 「ctl00_content2_ucControl1_imgTest」。如何顯示和隱藏圖像?請告訴我。謝謝你的幫助。此外,我試圖使用document.getElementById(「<%= imgTest.ClientID」);和$找到(( 「<%= imgTest.ClientID」);但這些都不工作javascript getElementByID for asp:圖像返回null

<asp:Image ID="imgTest" ImageUrl="../../../images/test.gif" AlternateText="test" 
          runat="server" style="display:none"></asp:Image> 

<telerik:RadComboBox ID="Combobox1" runat="server" DataTextField="test1" 
          DataValueField="test_id" NoWrap="true" Width="250" onclientselectedindexchanged="OnClientSelectedIndexChanged">      </telerik:RadComboBox> 


<script type="text/javascript"> 
function OnClientSelectedIndexChanged(sender, eventArgs) { 
    { 
     var item = eventArgs.get_item(); 
      if(item.get_value() == "8") 
      { 
      var imageControl = document.getElementById('imgTest'); 
      imageControl.style.display = "block"; 
      } 
     } 
</script> 

回答

2

imgTest是服務器控件,因此客戶端ID會被服務器自動生成

。改變這一行:

var imageControl = document.getElementById('imgTest'); 

到:

var imageControl = document.getElementById('<%=imgTest.ClientId%>'); 

的問題與以前的嘗試是缺少結束標籤%>

+0

感謝。它現在正在工作。 – nav100

+0

歡迎。確保你爲未來的讀者和你自己的代表點贊成並接受正確的答案。 –

+0

+1,並根據實際的.net版本提供了一個解決問題的附加解決方案。 – lucuma