简而言之,我希望能够在语义 ui 的下拉列表中触发 onChange 函数。
$(".ui.dropdown").dropdown({onChange:function(value,text){console.log("a");}});
在这里看到一个小提琴:http: //jsfiddle.net/0mLLscoq/
我想在不单击下拉菜单并关闭它的情况下触发 onchange。只需以编程方式强制触发。
简而言之,我希望能够在语义 ui 的下拉列表中触发 onChange 函数。
$(".ui.dropdown").dropdown({onChange:function(value,text){console.log("a");}});
在这里看到一个小提琴:http: //jsfiddle.net/0mLLscoq/
我想在不单击下拉菜单并关闭它的情况下触发 onchange。只需以编程方式强制触发。
我找不到任何使用 API 的方法,但一种可能的技巧是为data-value
每个项目分配一个,然后手动触发对该项目的点击:
//HTML
<div class="ui dropdown">
<div class="text">Select</div>
<i class="dropdown icon"></i>
<div class="menu">
<div class="item" data-value="Edit">Edit</div>
<div class="item" data-value="Remove">Remove</div>
<div class="item" data-value="Hide">Hide</div>
</div>
</div>
//JS
$(".ui.dropdown").dropdown({onChange:function(value,text){console.log("a");}})
.find("[data-value='Hide']").trigger("click");
更新(2016 年 3 月 11 日):
正如@Süha 在评论中提到的那样,有一个下拉行为允许您更改值:
// Will change value and update UI
$('.dropdown').dropdown('set selected', 'Hide');
// Will only change value
$('.dropdown').dropdown('set value', 'Hide');
但这些都不会触发onchange
事件。