2012-03-26 8 views
1
<script type="text/javascript"> 
    $(document).ready(function() { 
     $(".div_soru").toggle(function() { 
      var cevap = "cevap" + $(this).attr("id"); 
      $("xxx").slideDown(); // 
     }, function() { 
      var cevap = "cevap" + $(this).attr("id"); 
      $("xxx").slideUp(); 
     }); 
    }); 
</script> 

in meinem Content-Seite:asp.net jquery id-Selektor in Content-Seite

<asp:Repeater ID="Repeater_sorular" runat="server" DataSourceID="SqlDataSource_sss"> 
    <HeaderTemplate> 
    </HeaderTemplate> 
    <ItemTemplate> 
     <div> 
      <div class="div_soru" id='<%# Eval("sss_id") %>'> 
        <strong><%# Eval("sss_baslik") %></strong> 
      </div> 
      <div class="div_cevap" id='<%# "cevap"+Eval("sss_id") %>' style="display: none; padding: 5px 5px 5px 15px;"> 
        <%# Eval("sss_icerik") %> 
      </div> 
     </div> 
    </ItemTemplate> 
</asp:Repeater> 

in Script-Code, ich möchte id = cevap schreiben, was ich schreibe, anstelle von "xxx" ich kann nicht richtig finden Syntax. in Master-Seite, wenn schreiben $ ("#" + cevap) es funktioniert. aber in Content-Seite funktioniert es nicht.

dank ...

Antwort

2

Es gibt einen einfacheren Weg, dies mit dem next Wähler zu tun. Hier einige Beispiel-Code:

​$(function(){ 
    $(".div_soru").click(function(){ 
     $(this).next(".div_cevap").show(); 
    });                  
});​ 

Das obige Beispiel vereinfacht wird unter Verwendung des click Ereignis, sondern sollten in angemessener Weise das Konzept demonstrieren. Hier ist ein jsFiddle, wenn Sie weitere Erläuterungen benötigen.

+0

cool. Ich habe viel unnötigen Code geschrieben. Vielen Dank –