如何限制选择列表 - 在 KnockoutJS 中只选择一项
Posted
技术标签:
【中文标题】如何限制选择列表 - 在 KnockoutJS 中只选择一项【英文标题】:How to limit select list - to select only one item in KnockoutJS 【发布时间】:2019-01-18 17:53:34 【问题描述】:如何限制选择列表只选择一项? 可以通过css来实现吗?
<select multiple data-bind="options: Items,
optionsText: 'Title',
value: selectedItems, optionsValue: 'Id',
attr: name: 'item' "></select>
<div data-bind="text: selectedItems"></div>
function ViewModel()
var self = this;
var selection = [];
self.selectedItems = ko.observableArray();
self.Items = ko.observableArray(["Id": "0", "Title": "Item1",
"Id": "1", "Title": "Item2", "Id": "2", "Title": "Item3"]);
ko.applyBindings(new ViewModel());
http://jsfiddle.net/s95wezu2/1/
【问题讨论】:
你能用一句话解释multiple
属性的作用吗?
这与 CSS 或 Knockout 无关。只知道多重属性的作用w3schools.com/tags/tag_select.asp
【参考方案1】:
我不确定您的要求。您可以使用size
属性代替multiple
。这将限制用户选择多个选项,但会显示所有选项。
function ViewModel()
var self = this;
var selection = [];
self.selectedItems = ko.observableArray();
self.Items = ko.observableArray(["Id": "0", "Title": "Item1",
"Id": "1", "Title": "Item2", "Id": "2", "Title": "Item3"]);
ko.applyBindings(new ViewModel());
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<select size = 3 data-bind="options: Items,
optionsText: 'Title',
value: selectedItems, optionsValue: 'Id',
attr: name: 'item' "></select>
<div data-bind="text: selectedItems"></div>
你不需要 CSS。
【讨论】:
以上是关于如何限制选择列表 - 在 KnockoutJS 中只选择一项的主要内容,如果未能解决你的问题,请参考以下文章
当一个或多个项目被取消选择时,knockoutjs 取消选择/选择所有复选框
使用KnockoutJS中的选项绑定为下拉列表中的某些选项添加类