【发布时间】:2014-03-11 18:40:07
【问题描述】:
尝试将Json 返回的数据渲染到kendo 下拉列表,但不渲染。请找到代码 sn-pt。我能够看到警报框。我试过JSON.parse(siteNameData),但没有运气。
AJAX 调用
$.ajax({
url: '../Report/GetSitesofSelectedClient',
type: "GET",
cache: false,
datatype: "json",
data: { "selectedClientCode": selectedClientCode },
contentType: "application/json",
async: false,
success: function(siteNameData) {
alert('hello');
$("#siteNamesDropDown").kendoDropDownList({
dataTextField: "text",
dataValueField: "value",
template: $("#CheckboxTemplate2").html(),
datasource: siteNameData,
placeholder: "Select...",
select: function(e) {
e.preventDefault();
}
}).data("kendoDropDownList");
//PopulateSiteNamesDropDown(siteNamesReceived);
},
error: function(xhr, ajaxOptions, thrownError) {
ShowDialogError(xhr, 'High Chart Status Report');
}
});
控制器
public JsonResult GetSitesofSelectedClient(string selectedClientCode)
{
ViewBag.ShowReport = true;
var highChartModel = new HighChartViewModel();
var siteData = highChartModel.GetListOfSites(selectedClientCode);
return Json(new {siteData}, JsonRequestBehavior.AllowGet);
}
型号
public string GetListOfSites(string clientCode)
{
SiteNameList = _serviceSessionManager.GetSiteListForClient(clientCode);
listOfSiteNames = new List<SiteStatusReportModel>();
foreach (Site siteName in SiteNameList)
{
var siteNameInfo = new SiteStatusReportModel
{
text = siteName.SiteName,
value = siteName.SiteCode,
selected = false
};
listOfSiteNames.Add(siteNameInfo);
}
var siteNameJsonData = JsonHelper.ToJsonString(listOfSiteNames)
return siteNameJsonData;
}
【问题讨论】:
标签: jquery json asp.net-mvc-4 kendo-ui