[JQUERY] asp.net MVC에서 컨트롤러에 대한 간단한 Ajax 호출 만들기
JQUERYasp.net MVC에서 컨트롤러에 대한 간단한 Ajax 호출 만들기
해결법
-
1.업데이트 후에는 수행 한
업데이트 후에는 수행 한
이전 만 어떤 HTML 렌더링없이 브라우저에 JSON을 반환했다. 지금은 당신의 JSON 데이터를 얻을 수 렌더링 된 HTML보기가 있습니다.
직접 JSON에게 그것의 일반 데이터하지 HTML을 렌더링 할 수 없습니다.
-
2.서버에 아무것도 게시하지 않는 한 데이터 속성을 제거합니다 (컨트롤러는 매개 변수를 기대하지 않습니다).
서버에 아무것도 게시하지 않는 한 데이터 속성을 제거합니다 (컨트롤러는 매개 변수를 기대하지 않습니다).
그리고 당신의 AJAX 방법에 당신은 오히려 정적 문자열보다 Url.Action @ 면도기 사용을 사용할 수 있습니다 :
$.ajax({ url: '@Url.Action("FirstAjax", "AjaxTest")', contentType: "application/json; charset=utf-8", dataType: "json", success: successFunc, error: errorFunc });
당신의 업데이 트에서 :
$.ajax({ type: "POST", url: '@Url.Action("FirstAjax", "AjaxTest")', contentType: "application/json; charset=utf-8", data: { a: "testing" }, dataType: "json", success: function() { alert('Success'); }, error: errorFunc });
-
3.동적으로이 같은 액션을 호출하여 URL을 변경하기 위해 면도기를 사용합니다 :
동적으로이 같은 액션을 호출하여 URL을 변경하기 위해 면도기를 사용합니다 :
$.ajax({ type: "POST", url: '@Url.Action("ActionName", "ControllerName")', contentType: "application/json; charset=utf-8", data: { data: "yourdata" }, dataType: "json", success: function(recData) { alert('Success'); }, error: function() { alert('A error'); } });
-
4.우선이 중 "1.9.1"또는 "2.0.0", 한 페이지에서 JQuery와 라이브러리의 서로 다른 두 가지 버전을 가질 필요 없다 아약스 전화를 작동하게하기에 충분 ..
우선이 중 "1.9.1"또는 "2.0.0", 한 페이지에서 JQuery와 라이브러리의 서로 다른 두 가지 버전을 가질 필요 없다 아약스 전화를 작동하게하기에 충분 ..
다음은 컨트롤러 코드는 다음과 같습니다
public ActionResult Index() { return View(); } public ActionResult FirstAjax(string a) { return Json("chamara", JsonRequestBehavior.AllowGet); }
이것은 당신은보기가 어떻게 :
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> <script type="text/javascript"> $(document).ready(function () { var a = "Test"; $.ajax({ url: "../../Home/FirstAjax", type: "GET", data: { a : a }, success: function (response) { alert(response); }, error: function (response) { alert(response); } }); }); </script>
-
5.당신이 당신 아약스 호출에 C # 방법을 칠 필요가 있다면 당신은 당신의 요청이 그냥 단지 URL을 지정해야합니다 후 얻을 경우이 개 문제 유형 및 URL을 전달해야합니다. 이 벌금을 일하고 아래의 코드를 따르십시오.
당신이 당신 아약스 호출에 C # 방법을 칠 필요가 있다면 당신은 당신의 요청이 그냥 단지 URL을 지정해야합니다 후 얻을 경우이 개 문제 유형 및 URL을 전달해야합니다. 이 벌금을 일하고 아래의 코드를 따르십시오.
C # 코드 :
[HttpGet] public ActionResult FirstAjax() { return Json("chamara", JsonRequestBehavior.AllowGet); }
자바 스크립트 코드의 경우 GET 요청
$.ajax({ url: 'home/FirstAjax', success: function(responce){ alert(responce.data)}, error: function(responce){ alert(responce.data)} });
자바 스크립트 코드의 경우도 POST 요청 및 [HttpGet]을 [HttpPost]
$.ajax({ url: 'home/FirstAjax', type:'POST', success: function(responce){ alert(responce)}, error: function(responce){ alert(responce)} });
참고 : 동일한 컨트롤러에 FirstAjax 경우보기 컨트롤러 다음 어떤 URL에서 컨트롤러 이름을 필요로하는. URL이 같은 'FirstAjax'
-
6.그것은 당신의 UPDATE 질문에 대한합니다.
그것은 당신의 UPDATE 질문에 대한합니다.
같은 이름 및 서명 두 가지 방법이 없기 때문에 당신은 ActionName 속성을 사용해야합니다 :
최신 정보:
[HttpGet] public ActionResult FirstAjax() { Some Code--Some Code---Some Code return View(); } [HttpPost] [ActionName("FirstAjax")] public ActionResult FirstAjaxPost() { Some Code--Some Code---Some Code return View(); }
그리고 메소드가 동작하게하는 방법을 더 참조 할 수 있도록이 링크를 참조하시기 바랍니다. 아주 좋은 참고하지만.
-
7.전망;
전망;
$.ajax({ type: 'GET', cache: false, url: '/Login/Method', dataType: 'json', data: { }, error: function () { }, success: function (result) { alert("success") } });
컨트롤러 방법;
public JsonResult Method() { return Json(new JsonResult() { Data = "Result" }, JsonRequestBehavior.AllowGet); }
-
8.대신 URL의 :의 serviceURL, 사용하다
대신 URL의 :의 serviceURL, 사용하다
url: '<%= serviceURL%>',
당신은 successFunc 2 개 매개 변수를 전달하는?
function successFunc(data) { alert(data); }
-
9.Global.asax에있는 "JsonValueProviderFactory"를 추가 :
Global.asax에있는 "JsonValueProviderFactory"를 추가 :
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); ValueProviderFactories.Factories.Add(new JsonValueProviderFactory()); }
from https://stackoverflow.com/questions/16186083/making-a-simple-ajax-call-to-controller-in-asp-net-mvc by cc-by-sa and MIT license
'JQUERY' 카테고리의 다른 글
[JQUERY] 내가 어떻게 차단하거나 jQuery로 입력 필드에서 특수 문자를 제한 할 수 있습니까? (0) | 2020.10.08 |
---|---|
[JQUERY] iframe이 만 페이지의 특정 부분을 표시합니다 (0) | 2020.10.08 |
[JQUERY] 언제 jQuery의 document.ready 기능을 사용해야합니까? (0) | 2020.10.08 |
[JQUERY] $ 아약스 - dataType와 (0) | 2020.10.08 |
[JQUERY] 그것은 선택 상자 스타일 수 있습니까? [닫은] (0) | 2020.10.08 |