Lier Modèle Mvc en utilisant html <select> tag

j'ai une liste déroulante, cette liste de lier la valeur à l'aide de appel ajax

<script type="text/javascript">
function getCityName(data) {
    $('#ddlCity').empty();
    if (data != 0) {
        $.ajax({
            type: "POST",
            url: "/Home/GetCityList",
            data: { 'CityId': data },
            cache: false,
            //contentType: "application/json",
            datatype: "JSON",
            success: function (result) {
                var cityData = result.Data;
                var defaultV = new Option("--Select--", 0, true);
                $('#ddlCity').append(defaultV);
                for (var i = 0; i < cityData.length; i++) {
                    var opt = new Option(cityData[i].CityName, cityData[i].Id);
                    $('#ddlCity').append(opt);
                }
            }
        });
    }
    else {
        alert('Select State');
    }
}

<div>@Html.LabelFor(c => c.CityId)</div>
<div><select id="ddlCity"></select></div>

entendre je veux lier modèle prop CityId dans le modèle de la classe de façon à lier...

  • Votre <select> élément a besoin d'un name attribut pour correspondre le modèle de la propriété. Ne pas générer manuellement. Utiliser le DropDownListFor() méthode
  • sortie de flux de données json et comment lier dans DropDownListFor()
  • Pourquoi dans le monde, êtes-vous d'utiliser ajax pour cela si c'est la seule dropdownlist dans la vue. Vous n'avez pas de liaison de modèle et pas de validation. Toutefois, si c'est pour en cascade dropdownlists, puis reportez-vous à ce DotNetFiddle
  • Comment faites-vous appel à getCityName, est-il un bouton ou quelque chose?
  • pas touche, c'est l'événement de la liste déroulante onchange()