2009-08-25 5 views
1

AJAX 호출을 통해 정렬되지 않은 목록에 추가되는 목록 항목의 HTML 덩어리를 반환하는 부분 뷰가 있습니다. 이 모든 것이 잘 작동합니다.부분 뷰 As JsonResult

그러나 AJAX 호출에서 HTML을 수신하면 JQuery를 통해 각 목록 항목의 일부 속성을 설정하고 싶습니다. 이를 위해서는 ActionResult보다는 JsonResult로 AJAX 콜백 결과를 받아야한다고 가정합니다. 불행히도 HTML을 렌더링하는 데 사용하는 ASCX를 계속 사용하고 싶습니다. HTML을 렌더링하는 데 꽤 많은 데이터가 포함되어 있기 때문입니다.

부분 뷰를 렌더링 한 다음 AJAX 클라이언트 용 JsonResult로 변환 할 수 있습니까? 아니면 고려해야 할 다른 접근 방식이 있습니까?

모든 조언을 주시면 감사하겠습니다.

감사합니다.

답변

4

실제로 JsonResult가 필요하지 않습니다. ActionResult 부분은 일부 xml/html 권한을 검색합니까? 그럼 당신은 그것을 구문 분석 jQuery를 사용하고이처럼 조회 할 수 있습니다 : 당신의 결과는 li의 단지 무리가 당신이 할 수있는 경우

는 또한
function success(result) { 
    var html = $(result); //this creates a jquery object out of your result html 
    $("ul li", html); //this gets you all the list items in context of the resulting html 
} 

:

function success(result) { 
    var lis = $(result); 
    lis.each(function() { $(this).append(" testing"); }); 
    $("#yourUl").append(lis); 
} 

이이 단순화 될 수있다 연결하기 쉽지만 이해하기 쉽도록 조금 더 장황하게 만들었습니다