My View is
@model TryMVC.Models.MobileData @{ ViewBag.Title = "SelectDistrict"; } <script src="~/Scripts/jquery-1.7.1.min.js">script> <h2>Cascading Dropdownlisth2> <table> <tr> <td> <label>Statelabel> td> <td> @Html.DropDownListFor(x => x.stateNamesModel, Model.stateNamesModel, "--Select--", new { @id="ddlState"}); td> tr> <tr> <td> <label>Districtlabel> td> <td id="District"> @Html.DropDownListFor(x => x.DistrictNamesModel, new List<SelectListItem>(), "--Select--", new { @id = "ddlDistrict" }); td> tr> table> <script type="text/javascript"> $(document).ready(function () { $('#ddlState').change(function () { $.ajax({ type: "post", url: "/DropDownList/GetDistrict", data: { stateId: $('#ddlState').val() }, datatype: "json", traditional: true, success: function (data) { var district = "; district = district + ''; for (var i = 0; i < data.length; i++) { district = district + ' + data[i].Text + ''; } district = district + ''; $('#District').html(district); } }); }); }); script>
My Controller Is
public ActionResult SelectDistrict() { MobileData md = new MobileData(); DBData dd = new DBData(); DataSet ds = new DataSet(); ds = dd.getState(); List<SelectListItem> stateNames = new List<SelectListItem>(); foreach (DataRow item in ds.Tables[0].Rows) { stateNames.Add(new SelectListItem { Text = item["StateName"].ToString() ,Value=(item["StateId"].ToString()) }); } md.stateNamesModel = stateNames; return View(md); } [HttpPost] public ActionResult GetDistrict(string stateId) { MobileData md = new MobileData(); int statId; List<SelectListItem> DistrictNames = new List<SelectListItem>(); if (!string.IsNullOrEmpty(stateId)) { statId = Convert.ToInt32(stateId); DBData dd = new DBData(); DataSet ds = new DataSet(); ds = dd.GetCityOnstate(statId); foreach (DataRow item in ds.Tables[0].Rows) { DistrictNames.Add(new SelectListItem { Text = item["City"].ToString() , Value=(item["CityId"].ToString()) }); } } return Json(DistrictNames, JsonRequestBehavior.AllowGet); }My Model Is
public class MobileData { public IList<SelectListItem> stateNamesModel { get; set; } public IList<SelectListItem> DistrictNamesModel { get; set; } }
My problem is , The dropdownlist for State is populated but [HttpPost] event for GetDistrict is not Firing....Help me plz
GetDistrict
Bikesh SrivastavaPosted Aug 17, 2016, 8:53 AM
Posted Aug 17, 2016, 5:34 AM
$(document).ready(function () {$.ajax({ type: "post",url: "/DropDownList/GetDistrict",data: { stateId: $('#ddlState').val() },datatype: "json",traditional: true,success: function (data) {district = district + '';district = district + '';$('#District').html(district);{ MobileData md = new MobileData();{return View(md);[HttpPost]{int statId;{statId = Convert.ToInt32(stateId);{My Model Is{Posted Aug 17, 2016, 5:26 AM
Midhun TpPosted Aug 17, 2016, 5:17 AM