0
我有這個視圖。如何根據第一個下拉選定值綁定第二個下拉列表ASP.NET MVC3
@if (@Model.QuestionType == 12)
{
<div data-role="fieldcontain">
@using (Ajax.BeginForm("SaveFormBuilder", "GetQuestion", new { QuestionNo = Model.QuestionNo, PreviousQuestionNo = Model.PreviousQuestion }, new AjaxOptions { }, new { id = "myform_" + @Model.QuestionNo }))
{
@Html.AntiForgeryToken()
<fieldset id="@(Model.QuestionNo)_fld">
<div id="country" style="display: @(Model.FormBuilder.IsCountryDisplay == true ? "block" : "none")">
<label class="select">@Model.FormBuilder.CountryText
</label>
<select id="countrylstdrp" name="Country" required="@(Model.FormBuilder.IsCountryRequired == true ? "true" : "false")" onchange="FillStates()">
@if (Model.FormBuilder.CountryList != null)
{
<option value="-1">--Select--</option>
foreach (var country in Model.FormBuilder.CountryList)
{
<option value="@country.CountryId">@country.CountryName</option>
}
}
</select>
</div>
<div id="state" style="display: @(Model.FormBuilder.IsCountryDisplay == true ? "block" : "none")">
<label class="select">@Model.FormBuilder.StateText
</label>
<select id="statelistdrp" name="State" required="@(Model.FormBuilder.IsStateRequired == true ? "true" : "false")">
<option id="-1" value="select">----Select--</option>
</select>
</div>
<br />
</fieldset>
<div data-role="none" style="float: right">
<input type="submit" id="@(Model.QuestionNo)_chknone" data-inline="true" onclick="return SaveCheckBoxNew(this);" value="@Model.SubmitButtonText" />
</div>
}
</div>
}
加載此視圖時我將綁定所有國家的值。我的任務是現在當用戶改變國家它應該加載尊重的國家。 在我的控制器
[HttpPost]
public ActionResult LoadStates(int countryId)
{
List<State> lstate=ques.GettheStates(countryId);
return Json(lstate);
}
和我的模型是 公共類國家 { 私人詮釋_stateId; private string _stateName;
public string StateName
{
get { return _stateName; }
set { _stateName = value; }
}
public int StateId
{
get { return _stateId; }
set { _stateId = value; }
}
}
並通過JQuery我打電話給這個Controller Action。
function FillStates() {
var countryId = $(countrylstdrp).val();
$.ajax({
url: 'LoadStates',
type: 'POST',
data: JSON.stringify({ countryId: countryId }),
dataType: 'json',
contentType: 'application/json',
success: function (data) {
alert('success');
}
});
}
但它沒有調用控制器動作是什麼原因? 我怎麼能在mvc3中做到這一點。 在此先感謝。