2017-11-11 2 views
0

내 컨트롤러에서 내보기로 응답을 보내려고했지만 일반 JSOn 표시 (Firefox : 이미지 첨부) 또는 json 파일 다운로드 프롬프트가 표시됩니다. 나는 많은 접근법을 시도했다. 누군가 나를 보여 주거나 코드를 제공하여 최소한의 성공을 얻을 수 있고 최소한 enter image description here의 경고를 표시 할 수 있습니까?보기에서 json 결과/응답을 얻는 방법

public JsonResult GetGata() 
    { 
     List<ProdVM > pvl = new List<ProdVM>(); 
     try 
     { 
      ProdVM pvm1 = new ProdVM(); 
      pvm1.ProductID = 1; 
      pvm1.ProductName = "Computer"; 
      pvl.Add(pvm1); 
      return Json(pvl, JsonRequestBehavior.AllowGet); 
      } 

     catch (Exception) 
     { 
      throw; 
     } 
    } 
$(document).ready(function() { 
$(document).ready(function() { 
    $('#myGrid').DataTable({ 
     "ajax": { 
      "url": "/Home/GetGata/", 
      "dataSrc": "" 
     }, 
     "columns": [ 
     { "data": "ProductName" }, 
     { "data": "ProductID" } 
     ] 
    }); 
}); 

});

답변

0

DataTable의 플러그인이 AJAX 엔드 포인트가이 형식

{"data":[["1","Computer"],["2","Camera"]]} 

그 볼 수있는 데이터를 반환 할 것으로 예상 각 항목 배열 (각 캐릭터 항목 속성 값 인 문자열 배열)

이 이것은 당신이 당신의 페이지

을이 같은 테이블이 가정 작동합니다

public ActionResult GetData() 
{ 
    var items = new List<string[]> 
    { 
     new string[] {"1", "Computer"}, 
     new string[] {"2", "Camera"} 
    }; 
    return Json(new { data = items }, JsonRequestBehavior.AllowGet); 
} 

작동합니다

<table id="example" class="display" cellspacing="0" width="100%"> 
    <thead> 
     <tr> 
      <th>Id</th> 
      <th>Name</th> 
     </tr> 
    </thead> 
</table> 

와 JS 코드는 답변 주셔서 감사합니다 데이터 테이블

$(function() { 
    $('#example').DataTable({ 
     "ajax": "@Url.Action("GetData")" 
    }); 
}); 
+0

에 대한 데이터를 얻을 사용하는 엔드 포인트를 호출합니다. 그러나, 나는 여전히 페이지와 같은 오류가 발생합니다. 파이어 폭스는 json 값을 표시하고 IE는 JSon 다운로드를 요구합니다. 누군가 나를 도와주세요. 나는 여기에 갇혀 연습 또는 아무것도 얻을 수있는 json 응답에 대한 자세한 내용은 .net 컨트롤러에서 오는 성공 및 응답 html로 표시합니다. 제발 좀 도와주세요. –

+0

페이지를 실행할 때 경고가 표시됩니다. 끝점에 직접 액세스하려고하면 브라우저 설정에 따라 오류가 발생할 수 있습니다. 우편 배달부/피 들러/고급 나머지 클라이언트 크롬 플러그인 – Shyju

+0

와 같은 엔드 포인트에 액세스하려고 시도합니다. 우편 배달부에서 Json 결과를 얻을 수 있습니다. 하지만 .cshtml (보기 파일)에서 가져와야합니다. localhost를 통해 URL에 액세스하고 있습니다. 그리고 학습용으로 모든 샘플을 시험해보기 위해 개발 모드에서 작업해야합니다. 당신은 Visual Studio의 로컬 호스트에서 볼 수있는 Hello world 타입 예제를 주시겠습니까? 응답은 컨트롤러에서 JsonResult 리턴 타입에서 오는 응답이고, jquer의 성공은 경고 발생시 잡을 수 있습니까 ??? –