Knockout.js选择列表在ios上运行不稳定

Knockout.js选择列表在ios上运行不稳定,knockout.js,ios6,cordova,safari,Knockout.js,Ios6,Cordova,Safari,我有几个选择框在ios中运行不稳定。我正在运行cordova 1.8.1,在我的页面上运行一个knockout.js应用程序。当我在项目选择器中选择一个项目时,它会被选中,但列表中的所有其他项目也会被选中。现在,据我所知,当我提交表单时,选择并报告了正确的项目,但对用户来说,它看起来非常糟糕,可能会非常混乱。我在做任何有趣的事情,下面是代码: <select class="dropdownList1" style='width:35%;left:28%;position:absolute;

我有几个选择框在ios中运行不稳定。我正在运行cordova 1.8.1,在我的页面上运行一个knockout.js应用程序。当我在项目选择器中选择一个项目时,它会被选中,但列表中的所有其他项目也会被选中。现在,据我所知,当我提交表单时,选择并报告了正确的项目,但对用户来说,它看起来非常糟糕,可能会非常混乱。我在做任何有趣的事情,下面是代码:

<select class="dropdownList1" style='width:35%;left:28%;position:absolute;' data-bind="value:ContactUsForm.Month,options:ContactUsForm.Months,optionsCaption: 'Month'"></select>

但当我选择7作为本月的指标时,结果如下:


这不是一个多选择框。在我看来,这里的错误出现在iOS中,但我怀疑当我选择一个值时,Knockout也在进行一些重新渲染。在普通浏览器中,框会快速关闭,因此您永远看不到“中间”状态,但在ios中,框会一直打开,直到您单击“完成”。

此问题是在敲除更新下拉列表中的项目时引起的。但是,即使
ContactUsForm.Months
从未更改,只要值更改(例如,当您选择项目时),Knockout仍会更新项目。有关此问题的更多详细信息,请参阅的文章

我认为他在那里提出的解决办法对你会有用。您不应该使用
选项
绑定,而应该使用他的
隔离选项
绑定。(另外,
绑定应始终位于
选项
隔离选项
之后)



这个问题也发生在我们的网站上。到目前为止,有什么解决方案或解决办法吗?关于这个问题,还有一个悬而未决的问题:如果删除
绑定,会发生什么情况?如果删除了值绑定,它就没有这个呈现问题!!谢谢你的建议,迈克尔。我会给它一个测试,它修复了发行版Nockout 2.3.0或3.0.0测试版应该可以修复这个问题,而无需更改代码。
<select data-bind="
    isolatedOptions:ContactUsForm.Months, optionsCaption:'Month', 
    value:ContactUsForm.Month"></select>