Knockoutjs - 单击按钮打开 select 下拉菜单
Knockoutjs - Open select dropdown on button click
有什么方法可以在单击其他按钮时打开下拉菜单吗?
给你!!
JS
function VM() {
var message = ko.observable("hello!!");
function onButtonClick() {
var dropdown = document.getElementById('dropdown');
showDropDown(dropdown);
}
function showDropDown(element){
var event;
event = document.createEvent('MouseEvents');
event.initMouseEvent('mousedown', true, true, window);
element.dispatchEvent(event);
}
return {
message: message,
onButtonClick:onButtonClick
}
}
ko.applyBindings(new VM());
HTML
<button data-bind="click: onButtonClick">
Button
</button>
<select id="dropdown" >
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
这里是JSFiddle!与解决方案
更新了 How can you programmatically tell an HTML SELECT to drop down (for example, due to mouseover)? 的解决方案以用于 Knockout
有什么方法可以在单击其他按钮时打开下拉菜单吗?
给你!!
JS
function VM() {
var message = ko.observable("hello!!");
function onButtonClick() {
var dropdown = document.getElementById('dropdown');
showDropDown(dropdown);
}
function showDropDown(element){
var event;
event = document.createEvent('MouseEvents');
event.initMouseEvent('mousedown', true, true, window);
element.dispatchEvent(event);
}
return {
message: message,
onButtonClick:onButtonClick
}
}
ko.applyBindings(new VM());
HTML
<button data-bind="click: onButtonClick">
Button
</button>
<select id="dropdown" >
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>
这里是JSFiddle!与解决方案
更新了 How can you programmatically tell an HTML SELECT to drop down (for example, due to mouseover)? 的解决方案以用于 Knockout