'작업 항목'을 만들기 위해 단일 페이지 양식을 생성하려고합니다. 속성 중 하나는 '작업 항목 유형'에 대한 드롭 다운입니다.ASP.Net에서 동적으로 부분 뷰 렌더링하기 MVC3 Ajax 호출로 작업 수행
작업 항목 유형에 따라 사용자가 이름 - 값 쌍 스타일 속성 표 (속성 시트)에 추가 정보를 제공해야 할 수 있습니다.
작업 항목 유형을 선택하거나 변경하자마자 속성 시트를 동적으로 렌더링하고 싶습니다. 사용자가 모든 정보를 제공하면 제출을 클릭하여 '작업 항목'을 만듭니다.
public ActionResult AttributeData(int id = 0)
{
var attributes = _workItemDataService.ListWorkItemTypeAttributes(id);
return PartialView("EditWorkItemAttributesPartialView", attributes);
}
지금 내가 드롭이를 연결하고 싶습니다 :
이@using (Ajax.BeginForm("AttributeData", new AjaxOptions() { UpdateTargetId="AttributeDataCell" }))
{
<div style="float:left">
@{
Html.RenderPartial("CreateWorkItemPartialView");
}
</div>
<div id="AttributeDataCell" style="float:right">
@Html.Action("AttributeData", new {id = 1})
</div>
}
컨트롤러의 AttributeData 조치는 단순히 부분 뷰를 렌더링 :
이
내가 지금까지 무엇을 가지고 선택 목록의 선택 이벤트가 발생하여 모든 선택 변경시 부분 표 시가 위의 표 셀에서 다시 렌더링됩니다. 선택한 값을 id로 전달하고 싶습니다.한 가지 방법은 양식을 강제로 제출하여 다시 렌더링하는 것입니다.
이것이 올바른 접근 방법이라면 어떻게해야할까요? Esp., 다시 렌더링 할 속성 시트 만 만드는 방법은 무엇입니까?
상기를 달성하는 더 좋은 방법이 있으면 알려주십시오.
감사
감사합니다. 드롭 다운 목록에서 선택한 항목 값을 얻으려면 어떻게합니까? form.serialize 대신 { 'id': id}와 같은 것을 전달할 수 있을까요? –
업데이트 : 아약스 요청에서 데이터의 특정 메소드 URL 및 id 값을 제공했습니다. (또한 AjaxForm을 HtmlForm으로 되돌 렸습니다) 모든 것이 잘 작동합니다. 하나님 감사합니다! .... 대린에게 감사드립니다. –
이 질문을 작업 코드로 업데이트 할 수 있습니까? 그게 정확히 내가 뭘 달성하지 못하고있다 :) – M05Pr1mty