【发布时间】:2018-08-06 01:02:05
【问题描述】:
我是淘汰赛新手,有一个关于使用数据绑定和“选项”绑定的问题。我想要两个下拉菜单,其中包含来自我的数据库的数据。我可以让第一个工作,但即使我以相同的方式实现第二个也不会出现。只有第一个下拉菜单会出现在页面中,其中包含所有正确的数据。但是应该与所有房间名称一起出现的第二个没有出现。但是当我删除第一个时,第二个起作用了。我显然在这里错过了一些东西,会是什么?
这是我的 HTML 代码:
<div align = "center">
<select data-bind="options: employees,
optionsText: 'FullName',
value: Id,
optionsCaption: 'Select employee to login'"class = "container">
</select>
</div>
<div align = "center">
<select data-bind="options: meetingRooms,
optionsText: 'Location',
value: Id,
optionsCaption: 'Choose room to book'" class = "container">
</select>
</div>
这是java脚本代码:
function BookingSystemViewModel() {
var self = this;
self.employees = ko.observableArray();
self.meetingRooms = ko.observableArray();
$.get( "/WebApi/API/Employees", function(data) {
self.employees(data);
});
$.get( "/WebApi/API/MeetingRooms", function(data) {
self.meetingRooms(data);
});
【问题讨论】:
-
你能给我们一个 JSFiddle 来复制这个问题,因为我没有看到任何错误的代码
-
@LiefdeWen jsfiddle.net/j6dwt9vu/1 这是代码,但数据没有出现在我的电脑上的下拉列表中。第一个下拉菜单按预期工作(我从我的数据库中获取所有数据),但第二个没有出现。但是当我删除第一个时,第二个有效,我也可以看到所有这些数据。但是当同时拥有它们时,就像某些东西被阻塞了
-
这是一个基于您的代码的快速演示 plnkr.co/edit/VU17hMvaFKhLlMrA0EX8
标签: javascript html ajax knockout.js bootstrap-4