2014-03-27 51 views
0

是否可以定義選擇列表的寬度?如果是這樣,該怎麼辦? 選擇標記不具有屬性寬度。更改選擇選項列表的寬度

<select data-bind="options: names, value: selectedName, optionsText: 'Name', optionsValue: Name, optionsCaption: Select Person"></select> 

回答

1

您可以使用attr綁定,並設置寬度的風格:

視圖模型:

function ViewModel() { 
    var self = this; 
    self.selectWidth = ko.observable(); 
    self.selectWidthStyle = ko.computed(function() { 
     return "width:" + self.selectWidth() + "px"; 
    }); 
} 

HTML:

<select data-bind="attr: {style: selectWidthStyle}"></select> 

Demo

+0

如果我想硬編碼的大小,那麼它會像這樣:「attr:{style:{width:'500px'}}」? – Henrik

+0

不,如果你想要的靜態寬度,然後只是添加樣式到HTML:'' – alexmac

+0

還有一件事,如何在一個CSS文件中做到這一點,所以所有的選擇列表可以使用相同的風格?謝謝。 – Henrik

2

使用CSS

<style> 
    select { width: 30%; /*or something like it*/ } 
</style>