我有一段代码,它使用getjson方法请求一些对象列表。 Controller动作方法正确返回对象列表。下面的代码在下拉列表中附加请求的数据,但它是不可见/透明的数据意味着它附加了我的数据,但它不可见,即它是白色/透明的。这是代码:
<script>
$(document).ready(function () {
$('#b1').click(function () {
var userName = "Hello"
$.getJSON("/classes/getCourseList?username=" + userName, function (data1) {
var myOptions =
{
val1: data1.title
};
var $mySelect = $('#s1');
$.each(myOptions, function (val, text) {
$mySelect.append($('<option />',
{
value: val,
text: text
}));
});
});
});
});
</script>
行动方法:
[AllowAnonymous]
public JsonResult getCourseList(string userName)
{
// Quiz q=new Quiz();
//q = _db.Quizzes.FirstOrDefault(x => x.QuizName.Equals(userName));
List<dummyCourses> list = new List<dummyCourses>();
foreach (Course c in db.Courses)
{
dummyCourses dc = new dummyCourses();
dc.title = c.title;
dc.creditHours = c.creditHours;
dc.instructor = c.instructor;
dc.code = c.code;
list.Add(dc);
}
return this.Json(list, JsonRequestBehavior.AllowGet);
}
答案 0 :(得分:1)
您会收到如下结构:
[ { "title": "Title", ... }, ... ]
我指的是对象数组,但您在代码中使用data1.title
(它将是undefined
)。
必须是data1[ 0 ].title
,data1[ 1 ].title
等。