>

ASP.NET 컨트롤러 메서드에서 얻은 View를 표시해야합니다. 어떻게해야합니까?

[HttpGet]
  public ActionResult B(string Email, string Password)
  {
  //some code
  return View();
  }

js


function A() {             
   $.get("/Home/B", {
   "Email": document.getElementById("Email").value,
   "Password": document.getElementById("Pass").value
   },
    function (data) {
       //  ......
    });

function (data) 에서 쓸 내용  반환 된 View() 를 받고 표시하기 위해 ?

  • 답변 # 1

    아약스 콜백에서 반환 된 '데이터'는 뷰의 HTML입니다. html 요소를 표시 할 수 있습니다.

    function A() {             
                        $.get("/Home/B", {
                            "Email": document.getElementById("Email").value,
                            "Password": document.getElementById("Pass").value   },
                         function (data) {
                             $('#div-where-you-want-to-show-view').html(data);
                         });
    
    

    Jquery없이 :

    document.getElementById("div-where-you-want-to-show-view").innerHTML = data;
    
    

  • 답변 # 2

    jQuery를 사용하는 경우 이것이 원하는 것입니다

    function (resultingHtml) {
       $(".the-div-you-are-displaying-the-results-in").html(resultingHtml);
    }
    
    

  • 답변 # 3

    주어진 시나리오에 대한 더 나은 접근 방법은 부분 뷰를 사용하는 것입니다. 액션 메소드에서 Partial View를 반환하고 다음과 같이 해당 액션 메소드를 호출 /로드하십시오.

    $("#divToDisplay").load("/home/B", 
               { 
                  Email: document.getElementById("Email").value
                 , Password: document.getElementById("Pass").value 
                }
              );
    
    

    그리고 당신이 사용하는이 방법에서는, 당신은 단지 html() 를 사용해야합니다  보기에서 반환 된 HTML 컨텐츠를 렌더링하는 메소드입니다.

    function A() {             
       $.get("/Home/B", {
       "Email": document.getElementById("Email").value,
       "Password": document.getElementById("Pass").value
       },
        function (data) {
            $("#divToDisplay").html(data);
        });
    
    

    와이즈 비즈   divToDisplay 입니다  보기의 html을 배치하려는 html 콘텐츠의 모든 div id

관련 자료

  • 이전 android - 다트에서 비동기 함수의 값을 사용하는 방법
  • 다음 url rewrite module - IIS에서 경로 재 작성