我有JavaScript代码:
<script>
function ChangeRegion()
{
var countryId = document.getElementById("country").value;
}
</script>
我的观点中有文字框:
@Html.DropDownListFor(m => m.Register.SelectCountryId, Model.Register.Country, "Select country", new { id = "country", @class = "form-control",@onchange="ChangeRegion();" })
现在我需要进行更改以将值传递给我的控制器以获取区域
我的控制员:
model.Register.Region = new SelectList(manager.GetRegions(model.Register.SelectCountryId), "Id", "Name");
编辑:这是我的帖子控制器:
当我选择国家并点击提交按钮时,我会获得raegions的值,但我需要在不提交表单的情况下获取值
model.Register.Country = new SelectList(manager.GetCountries(), "Id", "Name");
model.Register.Region = new SelectList(manager.GetRegions(model.Register.SelectCountryId), "Id", "Name");<-- i want to put here that id from javascript
model.Register.WebTypeOfLicense = new SelectList(CommonDbService.GetAllLicense(), "Id", "Name");
model.Register.City = new SelectList(manager.GetCities(model.Register.SelectRegionId), "Id", "Name");
return View(model);
答案 0 :(得分:0)
以下是使用您的函数使用Ajax Post的示例
这会将HTML元素的值发布到Home控制器上的GetData操作。一旦它到达GetData方法,它将返回它并在客户端上显示警报。
function ChangeRegion() {
var countryId = document.getElementById("country").value;
$.post('/Home/GetData', { 'CountryId': countryId }, function (d) {
alert(d);
}, 'json');
}
此代码位于我的HomeController中,
public JsonResult GetData(int CountryId)
{
return Json(CountryId);
}
很抱歉,如果这还不够清楚,如果您需要更多指示,请发布一些代码,例如controller&amp;行动名称。
由于