oj-select-one为所有选项显示未定义

时间:2018-07-27 16:30:02

标签: javascript knockout.js oracle-jet

我有一个可观察到的数组,可从REST获取其值

$.getJSON(rootModel.soho()).
        then(function (StudentCourseView1) {
            $.each(StudentCourseView1.items, function () {
                self.data.push({
                    StudentId: this.StudentId,
                    CourseId: this.CourseId,
                    Enrollmentdate :this.Enrollmentdate,
                    Notes :this.Notes,
                    Id : this.Id,
                    CourseName : this.CourseName,
                    StudentName: this.StudentName
                });
            });
                    });
             self.dataSource = new oj.ArrayTableDataSource(
              self.data, 
              {idAttribute: 'Id'}
      );

我已经创建了这样的选择一个

 <oj-select-one id="select1" style="max-width:20em"
                 options={{data}}
                 value="{{data.Id}}"
                 options-keys="[[data.StudentName]]" >
</oj-select-one>

所有选项均未显示

1 个答案:

答案 0 :(得分:2)

您确定ajax调用正在运行,并且控制台中没有错误吗?下拉列表中是否显示空白值列表?

如果是,则唯一缺少的元素是添加option-keys属性,以说明向用户显示哪些数据以及每个数据的键。

<oj-select-one id="select1" style="max-width:20em"
                 options={{data}}
                 options-keys="{{optionKeys}}" 
                 value="{{StudentId}}">

JS

//You can change this acc. to your convenience.
self.optionKeys = {value:"Id", label:"StudentName"};