2012-07-03 1 views
1

와 부분 뷰를 렌더링하는 모든 사이트로드 :내가이 jQuery로 부분 뷰를로드 할 때 JQuery와

$.get('@Url.Action("List" , "Menu")', function(data) { 
    $('#treeviewdiv div').replaceWith(data); 
});​ 

모든 사이트 내 사이트 내부에서 다시로드합니다. 나는 다른 머리 태그, 다른 몸 태그를 의미한다.

$.get('@Url.Action("List" , "Menu") #container', function(data) { 
    $('#treeviewdiv div').replaceWith(data); 
});​ 

... 그리고 용기 내 부분보기 내부의 div 태그입니다 :

나는이 너무 작동하지 자사을 사용합니다.

어떻게 해결할 수 있습니까?

+1

'PartialView'를 반환하는 귀하의 행동이 우연입니까? –

답변

2

이것은 일반적으로 부분보기가 아닌 전체보기를 반환하는 동작을 나타냅니다. 희소식은 이것이 약간 다른 선택권으로 간단하게 해결 될 수있다이다.

1 조치가 부분보기 반환합니다 : 아약스 요청에 따라 전환하는 것이 도움이 될 수 있습니다,이 아약스 또는 표준 방법을 통해 호출 할 수있는 작업 인 경우

public PartialViewResult Menu(){ 
    return PartialView(); 
} 

2 :

public ActionResult Menu(){ 
    return Request.IsAjaxRequest() ? PartialView() : View(); 
} 

3 또 다른 옵션은 당신이 (당신은 ViewStart.cshtml 파일 특정 뷰 또는이 작업을 수행 할 수 있습니다)에 대한 뷰를 처리 할 수 ​​있도록하는 것입니다 :

@{ 
    Layout = !IsAjax ? "~/Views/Shared/_Layout.cshtml" : null; 
} 
+0

감사합니다. 제 첫 번째 해결책은 나에게 더 좋을 것 같습니다. – Raika

관련 문제