2012-06-06 4 views
2

제 질문에 대한 답변을 찾기 위해 높고 낮음을 검색했습니다. 나는 아래 코드를 가지고 있으며, 단지 특정 행을 숨기기 위해 JQuery 함수를 가지고 싶습니다. 이것은 foreach 루프에 의해 리턴됩니다. 현재 반환 된 행은 모두입니다. 나는 .cshtml에서 JQuery를 사용하고있다. 제발 조언.cshtml에서 반환 된 JQuery FOREACH 행 가시성 전환

<body> 
    <script type="text/javascript">  

     $(document).ready(function(){ 
      $("input").click(function(){ 
       $("p").toggle(1000); 
      }); 
     }); 

    </script> 

    @foreach (var row in db.Query(selectQueryString)){  
     <p>First Name: @row.First_Name Last Name:@row.Last_Name</p> 
     <button>Toggle</button> 
    } 
</body> 

답변

1

이 당신을 위해 작동합니다 :

$("button").click(function(){ 
    $(this).prev("p").toggle(1000); 
}); 

Live DEMO

편집 :

을 당신은 당신이 실제로 모든 <p> 태그를 얻고있다 JQuery와의 선택으로 $("p")를 사용하는 경우; 그러나 귀하의 경우에는 각 버튼 이전에 하나만 원했습니다. 따라서 prev()은 클릭 한 버튼보다 먼저 <p>의 첫 번째 인스턴스를 가져와야합니다.

+0

위대한 @Josh Mein, 그것이 효과가있었습니다. 답변 감사합니다. .prev가 필요한 이유를 간략하게 설명해 주시겠습니까? 아니면 올바른 방향으로 나를 가리 키시겠습니까? 다시 한번 감사드립니다. – cholloway

+0

@cholloway 필요한 이유를 설명하는 답변을 업데이트했습니다. Stackoverflow에 오신 것을 환영합니다! :) –

+0

Ahhhh는 지금 명백하다. 다시 한번 감사드립니다. – cholloway