JQuery ID выбрать на странице содержимого ASP.NET - PullRequest
1 голос
/ 01 апреля 2012

Вот мой скрипт:

<script type="text/javascript"> 
$(document).ready(function () { 
    $(".div_question").toggle(function () { 
        var answer= "answer" + $(this).attr("id"); 
        $("xxx").slideDown(); //  what could i write here.
    }, function () { 
        var answer= "answer" + $(this).attr("id"); 
        $("xxx").slideUp(); 
    }); 
}); 
</script> 

, а вот моя страница контента:

<asp:Repeater ID="Repeater_question" runat="server" DataSourceID="SqlDataSource_question"> 
 <HeaderTemplate> 
 </HeaderTemplate> 
 <ItemTemplate> 
     <div> 
         <div class="div_question" id='<%# Eval("question_id") %>'> 
               <strong><%# Eval("question_header") %></strong> 
         </div> 
         <div class="div_answer" id='<%# "answer"+Eval("question_id") %>' style="display: none; padding: 5px 5px 5px 15px;"> 
              <%# Eval("question_content") %> 
         </div> 
     </div> 
 </ItemTemplate> 
</asp:Repeater> 

Я хочу выбрать div_answer, чтобы показать / скрыть.Что я пишу вместо "ххх", я не могу найти правильный синтаксис.На главной странице, когда я пишу $("#" + answer), это работает.Но на странице содержимого это не работает.

1 Ответ

5 голосов
/ 01 апреля 2012

На основании вашей структуры разметки вы можете просто использовать next() и покончить с этим. next() находит ближайшего родственника, который может быть отфильтрован селектором.

$(document).ready(function () { 
    $(".div_question").toggle(function () { 
        $(this).next().slideDown();
    }, function () { 
        $(this).next().slideUp(); 
    }); 
}); 
...