수색…


소개

이 문서에서는 System.Web.Mvc.Ajax 라이브러리 사용에 대해 설명합니다.

Citing MSDN docs "각 확장 메서드는 HTML 요소를 렌더링합니다 .Action 메서드는 Action 메서드에 연결되는 anchor (a) 요소를 렌더링합니다. RouteLink 메서드는 URL에 연결되는 anchor (a) 요소를 렌더링하여 액션 메서드, 파일, 폴더 또는 기타 리소스를 포함하며이 클래스에는 AJAX 함수에서 지원하는 HTML 양식을 만드는 데 도움이되는 BeginForm 및 BeginRouteForm 메서드가 포함되어 있습니다.

매개 변수

AJAX 옵션 기술
확인 요청이 제출되기 전에 확인 창에 표시 할 메시지를 가져 오거나 설정합니다.
HttpMethod HTTP 요청 메서드 ( "Get"또는 "Post")를 가져 오거나 설정합니다.
삽입 모드 대상 DOM 요소에 응답을 삽입하는 방법을 지정하는 모드를 가져 오거나 설정합니다.
LoadingElementDuration 로드 요소를 표시하거나 숨길 때 애니메이션의 지속 기간을 제어하는 ​​값 (밀리 초)을 가져 오거나 설정합니다.
LoadingElementId Ajax 함수가로드되는 동안 표시되는 HTML 요소의 id 특성을 가져 오거나 설정합니다.
온 바인 페이지가 업데이트되기 전에 즉시 호출 할 JavaScript 함수의 이름을 가져 오거나 설정합니다.
OnComplete 응답 데이터가 인스턴스화되었지만 페이지가 업데이트되기 전에 호출 할 JavaScript 함수를 가져 오거나 설정합니다.
OnFailure 페이지 업데이트가 실패 할 경우 호출 할 JavaScript 함수를 가져 오거나 설정합니다.
OnSuccess 페이지가 성공적으로 업데이트 된 후 호출 할 JavaScript 함수를 가져 오거나 설정합니다.
UpdateTargetId 서버의 응답을 사용하여 업데이트 할 DOM 요소의 ID를 가져 오거나 설정합니다.
URL 요청할 URL을 가져 오거나 설정합니다.

비고

Jquery.Unobtrusive-Ajax 패키지가 프로젝트에 필요합니다. 해당 자바 스크립트 파일은 번들 ( jquery.unobtrusive-ajax.js 또는 jquery.unobtrusive-ajax.min.js )에 포함되어야합니다. 마지막으로 web.config 파일에서도 활성화해야합니다.

<appSettings>
    <add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>

호출 된 액션 (예제의 SomeAction )은 Json 또는 PartialView 중 하나를 반환해야합니다.

Ajax 액션 링크

@* Renders an anchor (a) element that links to an action method. 
 * The innerHTML of "target-element" is replaced by the result of SomeAction. 
 *@
@Ajax.ActionLink("Update", "SomeAction", new AjaxOptions{UpdateTargetId="target-element" })

Ajax Forms

@* Adds AJAX functions support to a form. 
 * The innerHTML of "target-element" is replaced by the result of SomeAction. 
 *@
@using ( Ajax.BeginForm("SomeAction", "SomeController",
                        new AjaxOptions {
                            UpdateTargetId="target-element",
                            OnSuccess = "some_js_fun(context)"
                        })
)
{
    <!-– my form contents -->
}


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow