【发布时间】:2016-11-20 08:06:36
【问题描述】:
所以我正在制作一个级联下拉列表,这是我的代码,
控制器:
public JsonResult GetStates(string id)
{
List<SelectListItem> ListOfStates = new List<SelectListItem>();
var TempSlist = this.GetStateList(Convert.ToInt32(id));
var StateData = TempSlist.Select(m => new SelectListItem()
{
Text = m.SName,
Value= m.SID.ToString(),
});
return Json(StateData, JsonRequestBehavior.AllowGet);
}
public IList<StateList> GetStateList(int CID)
{
GetCSCTContext DB = new GetCSCTContext();
return DB.StateLists.Where(m => m.CID_FK == CID).ToList();
}
}
对于
查看
<script type="text/javascript">
$(document).ready(function () {
$("#StatesDDL").hide();
$('#CntryDDL').change(function () {
$('#StatesDDL').show();
$.ajax({
type: 'POST',
url: '@Url.Action("GetStates", "Register")',
dataType: 'json',
data :
{
id: $('#CntryDDL').val()
},
success: function (states)
{
alert(CID);
$.each(states, function (i, state) {
$('#StatesDDL').append('<option value="' + state.Value + '">'
+ state.Text + '</option>');
});
},
});
我一直试图让这个 ajax 部分工作,但我没有通过浏览器看到任何错误,当我尝试在控制器中执行断点时,它似乎没有触发控制器中的功能。
【问题讨论】:
-
是POST调用还是GET调用?