有没有办法以编程方式打开组合框的下拉列表?
答案 0 :(得分:1)
正如@cfrick所说,无法从服务器端触发事件,但可以从客户端进行。
要运行javascript代码,您可以使用
Javascript.getCurrent().execute(myCode);
请注意,此代码仅在执行所有服务器端操作之后以及在vaadin引擎呈现响应之后运行。
要传递给javascript的代码必须与此类似:
var event;
event = document.createEvent('MouseEvents');
event.initMouseEvent('mousedown', true, true, window);
$("select").dispatchEvent(event)
为确保良好的行为,您应该在下拉列表中调用setId()并将该值用作jquery选择器。
<强>参考文献:强>
https://vaadin.com/book/vaadin7/-/page/advanced.javascript.html - 如何从vaadin运行javascript Can I open a dropdownlist using jQuery - 客户端解决方案 http://demo.vaadin.com/sampler/#ui/data-input/multiple-value/drop-down-menu - javascript代码在采样器中工作
答案 1 :(得分:0)
PrefixComboBox add-on中包含Vaadin 8的此功能(openPopup()和openPopup(int页面)方法),它是扩展的ComboBox,是缺少的功能的集合。
答案 2 :(得分:0)
如果我没记错的话,您可以使用 Vaadin 14.6.6(流程)中的组合框的以下方法:
.setOpened(true)
我目前正在使用 Vaadin 20(流程)并且我正在显示一个由另一个按钮的 clickListener 触发的组合框。通过使用这种方法,我的选择项立即显示。