this question을 확인하고 초기 문제를 해결했습니다. 하지만 사용자가 링크를 클릭 할 때만 부분 뷰를 렌더링하고 싶을 때, 페이지가로드 될 때 부분 뷰를 렌더링하고 부분 뷰가로드되는 동안 진행률 표시기를 표시 할 수 있습니다.아약스를 사용하여 부분 뷰 렌더링
어떻게 달성할까요?
고맙습니다.
this question을 확인하고 초기 문제를 해결했습니다. 하지만 사용자가 링크를 클릭 할 때만 부분 뷰를 렌더링하고 싶을 때, 페이지가로드 될 때 부분 뷰를 렌더링하고 부분 뷰가로드되는 동안 진행률 표시기를 표시 할 수 있습니다.아약스를 사용하여 부분 뷰 렌더링
어떻게 달성할까요?
고맙습니다.
(JQuery와 아약스 작업을 사용하여) 그 다음과 같이 입력하십시오 :
public ActionResult Create()
{
var model = new MyModel();
if (Request.IsAjaxRequest())
{
return PartialView("_Partial", model.PartialModel);
}
else
{
return View(model);
}
}
다음 페이지에서 like :
$(function(){
$(document).ajaxStart(function() {
//show a progress modal of your choosing
showProgressModal('loading');
});
$(document).ajaxStop(function() {
//hide it
hideProgressModal();
});
$.ajax({
url: '/controller/create',
dataType: 'html',
success: function(data) {
$('#myPartialContainer').html(data);
}
});
});
초기 페이지에서 @Html.Partial(...)
을 작성하여 렌더링 할 수 있습니다.
기본 페이지에 컨트롤러
public ActionResult GetModule(string partialName){
return PartialView("~/Views/Shared/"+partialName);
}
당신은 당신이 ActionMethod
을 만들 수있는 페이지를로드 한 후 아약스를 통해 부분 뷰를로드하려면
<div id='mod1'>Loading...</div>
<script type="text/javascript">
$("#mod1").load("/ControllerName/GetModule?partialName=test1");
</script>
Partial View의 파일 형식을 지정해야합니까? .cshtml과 같습니다. –
Think @ Html.Parital은 Ajax, jquery에서 사용할 수 없습니다. – Shan
@Shan : 서버 쪽입니다. 그것은 그것과 아무 상관이 없습니다. – SLaks
@SLaks, 메인 뷰를 표시 한 후에 표시 할 부분 뷰가 필요해 보이는 것 같습니다 (오랜 시간의 초기 처리를 피하기 위해). 내가 아는 한 @Html.Partial()은 메인 뷰와 함께 서버에서 처리됩니다. 그래서 그것은 인간의 문제를 해결하지 못합니다. 나는 또한 처음에 질문에 속았다. – cnom