2009-10-07 2 views
4

매우 최근의 질문에서 나는 이것에 문제가있었습니다. 내 코드이었다JQuery를 사용하여 ASP.Net MVC에서 부분 뷰로드 - 어떤 방법이 선호됩니까?

$("#SearchResults").load("/Invoice/InvoiceSearchResults/"); 

내가 대신를 사용하는 것이 좋습니다되었습니다

$.ajax({ 
     url: "/Invoice/InvoiceSearchResults/", 
     type: 'GET', 
     dataType: 'html', // <-- to expect an html response 
     success: doSubmitSuccess 
    }); 

로 :

function doSubmitSuccess(result) { 

$(".SearchResults").html(result);  

}

그리고 다른 다음 사람이 친절하게 도와 시도 다음을 포함합니다 :

$.get(postUrl, function(data) { 
      $("#posts").append(data); 
      $('#ajaxLdMore').addClass('hideElement'); 
      $('#ldMore').removeClass('hideElement'); 
     }); 

내 문제가 나는 바보에 빠졌어. abd는 '#'대신 '#'을 사용했다.

나는 이들 중 하나에 대해 내 코드를 바꾸어야하는지 궁금한가요?

각 접근 방식의 장단점이 있습니까? 아니면 선호합니까?

아무도 아직 게시하지 않은 더 좋은 방법이 있습니까?

나는 거대한 토론을 열려고하지 않고있다. (나는 생각하지 않는다.) - 단지 그것에 대해 좀 더 알고 싶다.

감사

답변

3

모두 작동하지만 그것은 마이크로 소프트 AJAX 솔루션보다 더 내구성이 장기이기 때문에 개인적으로 jQuery를 솔루션에 의존하고 있습니다. MS에서도 jQuery 로의 전환은 라이브러리를 많이 사용하기 때문에 매우 분명합니다.

2

$ .ajax를 사용하면 유연성이 향상됩니다. 나는 이것을 오류 처리에 특히 유용하다고 생각한다. 다른 곳

$.ajax({ 
     url: "/Invoice/InvoiceSearchResults/", 
     type: 'GET', 
     dataType: 'html', // <-- to expect an html response 
     success: function(result){ 
      $(".SearchResults").html(result); 
     }, 
     error: function(err){ 
      //handle errors here 
     } 
    }); 
을 doSubmitSuccess를 재사용하지 않는 경우

또한, 하나의 코드 블록에 그 결합 할 수 있습니다

관련 문제