2012-09-22 5 views
1

이 보드에 처음 작성했습니다. 나는 이탈리아 학생으로서 나쁜 영어로 실례합니다. 많은 시간 동안 나는 ASP.NET 웹 폼으로 내 웹 응용 프로그램을 개발했습니다. 이제 ASP.NET MVC 프레임 워크로 마이그레이션하고 싶습니다. 그래서 나는 두 가지 질문에 대해 질문하고 싶습니다.ASP.NET MVC 3 및 ​​AJAX

  1. 시나리오 1 :보기의 양식에 두 개의 DropDownList (요소)가 있습니다. 첫 번째 DropDownList에는 범주 목록이 있습니다. 첫 번째 DropDownList에서 항목을 변경하면 두 번째 항목이 하위 범주 목록을 자동으로로드합니다. Web Forms에서 저는 종종이 작업을 위해 UpdatePanel을 사용했습니다. 하지만 지금 MVC에서 나는 그것을 사용할 수 없습니다. jQuery AJAX를 사용하려고했지만 코드가 작동하지 않습니다. 이 직업을 어떻게 구현할 수 있습니까? 제발 제발?

  2. 시나리오 2 : 단계별 마법사 양식이 있습니다. 그래서, 나는 단계별로 데이터를 전달 (암기)해야합니다. 이 데이터를 어디에서 외울 수 있습니까? 세션? 충고?

대단히 감사합니다. Francesco.

+0

무엇을 시도 했습니까? 코드가 작동하지 않는다고 말하면 코드가 작동하지 않는 것을 확인하십시오. –

답변

3

1) jQuery ajax를 사용하여 사용자가 첫 번째 드롭 다운을 선택할 때 두 번째 드롭 다운 항목을 가져올 수 있습니다. 이

@Html.DropDownListFor(x => x.SelectedCategoryID, 
        new SelectList(Model.Categories, "ID", "Name"), "Select") 

@Html.DropDownListFor(x => x.SelectedSubCategoryID, 
        new SelectList(Model.SubCategories, "ID", "Name"), "Select") 

처럼

이 카테고리 클래스를 가정하면보기에이

public class Category 
{ 
    public ID { set;get;} 
    public string Name { set;get;} 
} 

및 드롭 다운 모양이다 이제 첫 번째 드롭 다운의 변경 이벤트를 수신하는 몇 가지 자바 스크립트를 가지고 값을 얻을 카테고리 ID를 받아들이고 하위 카테고리 목록을 JSON 형식으로 반환하는 액션 메소드에 대한 ajax 호출을 작성하십시오.

<script type="text/javascript"> 
    $(function() { 
     $("#SelectedCategoryID").change(function() { 
      var self = $(this); 
      var items=""; 
      $.getJSON("@Url.Action("Index", "GetSubCategories")?id="+self.val(), 
                    function(data){ 
       $.each(data,function(index,item){ 
        items+="<option value='"+item.ID+"'>"+item.Name+"</option>"; 
       }); 
       $("#SelectedSubCategoryID").html(items); 
      }); 
     }); 
    }); 
</script> 

이제 JSON 형식

public ActionResult GetSubCategories(int id) 
{ 
    List<Category> subCategoryList=new List<Category>(); 
    //to do : fill the list of (sub) categories to the 
    // above list for the category id passed to this method. 
    return Json(subCategoryList,Json.RequestBehaviour.AllowGet); 
} 

2) 세션이 잘해야에서 (하위) 카테고리의 목록을 반환하는 GetSubCategories 조치 방법이 있어야합니다.

+0

고마워요, ** : -) ** – fpellegrino