1

我正在尝试使用 select2 标签下拉菜单。

我调用向我发送数据的 API。我将数据放入 select2 中,如下所示:

AssignmentProvider.getStudentsInCourse(COURSENAME,SEMESTER)
.success(function(data) {
    $scope.select2OptionsForGroups = {
        'multiple': true,
        'simple_tags': true,
        'formatResult': formatResult,
        'formatSelection': formatResult,
        'tags': data
    };
})
.error(function(e) {
        // TODO: Error handling
        console.log("error");
});

数据是包含学生对象的数组,所以我用这个来获取对象内部的名称。

 function formatResult(student) {
        return student.id.Student.FullName;
    };

当我从下拉列表中选择第一个名字时,一切都很完美,但是当我尝试选择第二个名字时,就像列表中没有可供选择的内容一样,但是如果我删除现有的选择,所有的名字都会回来。

在这里,我选择了第二个,没有任何反应:

在此处输入图像描述

这是我没有选择任何人的时候。

在此处输入图像描述

当我点击时它会显示名称,但是当我输入搜索词时会显示

Uncaught TypeError: Cannot read property 'FullName' of undefined 

更新:

有谁知道这里可能出了什么问题,我猜我需要告诉 select2 在对象内搜索该术语,但是如何?

4

1 回答 1

-2

我最初的猜测是您有一些未定义 Student 的数据条目

于 2014-07-11T16:20:20.773 回答