我有MVC应用程序,并且有一个JavaScript代码视图。我从服务获取数据并返回Json字符串(不是对象)。这是控制器代码:
public JsonResult GetDataTableAsJson()
{
return Json(MobileServiceClient.GetAllCashdesks(), JsonRequestBehavior.AllowGet);
}
视图中的JavaScript代码:
$.ajax({
...
html.push('<select id="options">');
html.push('</select>');
$.ajax({
url: hostName + 'Search/GetDataTableAsJson',
contentType: "application/json; charset=utf-8",
dataType: "json",
crossDomain: "true",
async: false,
success: function (data1) {
var dt = JSON.parse(data1);
$.each(dt, function(key, value) {
$('#options').append($("<option></option>").attr("value", value.CityName).text(value.CityName));
...
它发生了什么?该列表为空,但应该有项目。
当我在第二个Ajax调用中检查“select”元素时:
var menu = document.getElementById("options");
菜单为空。
我做错了什么?