2012-03-26 24 views
0

カスケードが機能するため、アプリケーションを実行すると2つのカスケードドロップダウンがありますが、ドロップダウンの値を取得すると最初のドロップダウンの値だけが得られます。私は常にゼロの値を得ます。カスケードドロップダウンでは戻り値がありません

のViewModelコード:

​​

パーシャルビューコード:

<script type="text/javascript"> 
    $(function() { 
     $('#universidad').change(function() { 
      var selectedUniversidadId = $(this).val(); 
      $.getJSON('@Url.Action("GetCiudadList", "Consultorio", new { Area = "Superusuario", controller = "Consultorio" })', { UniversidadId: selectedUniversidadId }, function (myData) { 
       var citiesSelect = $('#ciudad'); 
       citiesSelect.empty(); 
       $.each(myData, function (index, itemData) { 
        citiesSelect.append($('<option/>', { 
         value: itemData.Value, 
         text: itemData.Text 
        })); 
       }); 
      }); 
     }); 

    }); 
</script> 
    @model RolesMVC3.Areas.Superusuario.Models.MyViewModel 
    <div> 
    Universidad: 
    @Html.DropDownListFor(x => x.SelectedUniversidadId, new SelectList(ViewBag.IdUniversidad, "IdUniversidad", "Nombre"), "-- Selecione Universidad --", new { id = "universidad" }) 
</div> 
<div> 
    Ciudad: 
    @Html.DropDownListFor(x => x.SelectedCiudadId, Enumerable.Empty<SelectListItem>(), "-- Seleccione Ciudad --", new { id = "ciudad" }) 
</div> 

コントローラーコード:

public ActionResult GetCiudadList(int UniversidadId) 
     { 
      decimal idd = (decimal)UniversidadId; 


      var universidades = (from u in db.UNIVERSIDAD 
           join s in db.SEDE_UNIVERSIDAD on u.IdUniversidad equals s.IdUniversidad 
           join c in db.CIUDAD on s.IdCiudadSede equals c.IdCiudad 
           where u.IdUniversidad == idd 
           select c).ToList(); 
      var myData = universidades.Select(a => new 
      { 
       Text = a.NombreCiudad, 
       Value = a.IdCiudad.ToString(), 
      }); 
      return Json(myData, JsonRequestBehavior.AllowGet); 

感謝と祝福

+1

http://meta.stackexchange.com/questions/13676/is-english-required-on-stack-overflow – dwerner

+0

翻訳:D – CADAVID

答えて

0

あなたはコントローラのアクションreceiが必要2つのパラメータ(2つのドロップダウンの選択値)。また、入力要素のname属性の値にも注意してください。パラメータの名前は "name"入力属性と同じである必要があります。

関連する問題