2012-03-26 19 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> 

私のコンテンツページで:スクリプトコードでのasp.net jqueryのIDセレクタ

<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> 

、私は私が正しい見つけるカント「XXX」の代わりに書かれたものは、ID = cevapを書きたいです構文。マスターページの を書き込むと、$( "#" + cevap)が動作します。コンテンツページでは、それは動作しません。

おかげで...

答えて

2

nextセレクタを使ってこれを行うための簡単な方法があります。ここではいくつかのサンプルコードです:

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

上記の例ではclickイベントを使用して簡素化されますが、適切に概念を実証しなければなりません。さらなる説明が必要な場合は、jsFiddleがあります。

+0

cool。私はたくさんの不要なコードを書いていました。ありがとう –