2011-11-04 45 views
0

我想知道如何在用戶點擊下面使用jquery(importantImg不在下面,但是在我的程序中)的img鏈接「importantImg」後顯示多個div。問題是這只是整個頁面的一部分,也有div,所以我不想讓我的選擇是「div」,我只想與這4個特定的div進行交互。下面是一個包含了5個格的HTML:jquery顯示多層div

<div id="divLayer1"> 
<div id="divLayer2" class="alertPod"> 
    <img src="<%= Page.ResolveUrl("~/{0}/_res/_images/icon_alertMessage.png", PBS.Cms.Settings.PBSFolderName) %>" /> 

</div> 

<div id = "divLayer3" class="msgPod"> 
    <div id= "divLayer4" class="messageWrapper"> 
     <h6>IMPORTANT ANNOUNCEMENT</h6> 
     <div class="box">   
      <div id="divLayer5" class="viewport" style="overflow: auto; height: 48px;" runat="server"> 
       <p> <%--id= "importantMessage">--%> 
       <asp:Literal ID="ltimportantannouncementTitle" runat="server"></asp:Literal> 
       <br /> 
       <asp:Literal ID="ltimportantannouncementSummary" runat="server"></asp:Literal> 
       </p> 
      </div> 
     </div> 
    </div> 
    <a href="#" ><img id="alertCloseBtn" src="<%= Page.ResolveUrl("~/   {0}/_res/_images/button_alertMsgClose.png", PBS.Cms.Settings.PBSFolderName) %>" /></a> 

下面是我使用的jQuery腳本不工作:

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("img#importantImg").click(function() {     
      $("#divLayer1").show(); 
      $("#divLayer2").show(); 
      $("#divLayer3").show(); 
      $("#divLayer4").show(); 
      $("#divLayer5").show();             
      $("#importantImg").attr("src", "<%= Page.ResolveUrl("~/{0}/_res/_images/icon_alertMessage.png", PBS.Cms.Settings.PBSFolderName) %>");        
     }); 
    }); 

</script> 
+0

對於顯示呈現的代碼(即瀏覽器在填充服務器端變量後看到的內容)通常會好得多(對您和我們來說)。通常不可能進行調試。 – nrabinowitz

+0

謝謝你讓我知道。我更新了我的帖子,以便將您對代碼瀏覽器在服務器端變量填充後看到的內容加以說明。 – jre247

回答

0

兩米這裏的東西:

1)你不」你需要爲你所有的函數做一個$(document).ready()。你可以做一次,然後把所有東西都放進去。

2)你的例子有點棘手,因爲這是一個jQuery的問題,那裏有ASP代碼。這裏是我的,你正在試圖做什麼解釋:

的Javascript: $(文件)。就緒(函數(){ $( '#show_message')點擊(函數(){ $(」。 !消息 ')HTML(' 這是一個重要的信息 '); $(' alert_pod「)顯示(); });

 $('#hide_message').click(function() { 
      $('.alert_pod').hide(); 
     }); 
    }); 

HTML: 查看留言 重要消息去這裏 隱藏訊息

我不知道ASP(或任何你使用的),但我懷疑問題是你的一些元素似乎沒有ID。你在Javascript中調用它們,但JS找不到元素,因爲我沒有id =「importantImg」。

希望有所幫助。

+0

我爲每個元素添加了id,因爲您說得對,我沒有某些元素的id。 headerAlertMessage框中的文本仍然出現同樣的問題,但沒有顯示,只有一個空的黑盒子。 – jre247

+0

我有一個我想要顯示的圖像元素,除了文本。 html()仍然適用於此? – jre247

+0

爲了回答它,我更新了我的帖子,使其更易於理解。任何幫助?謝謝! – jre247