首页 > 解决方案 > 通过控制台触发使用淘汰赛js创建的元素的更改事件

问题描述

下面是检查组合框的元素部分。

<select id="ddl-fund" aria-label="Funds" tabindex="0" data-bind="options: FundsAvailable, optionsText: 'Value', optionsValue: 'Key', value: SelectedFund, event:{ change: onSelectedFund}"> 
   <option value="413">International Equity Portfolio</option>
   <option value="723">International Equity Fund</option>
   <option value="724">International Select Fund</option>
</select>

我想从控制台触发更改事件。我已经使用下面的脚本更改了组合框的值。

$('#ddl-fund').find('option')[1].selected=true;

如果我使用以下脚本调用更改事件,则它不起作用:

$('#ddl-fund').trigger('change');

标签: javascriptjqueryknockout.js

解决方案


您应该能够使用ko.dataFor('#ddl-fund')来获取选择元素绑定到的视图模型。然后它应该只是onSelectFund假设它是找到的视图模型的一部分而执行的问题。

Knockoutjs - 使用不显眼的事件处理程序


推荐阅读