Android淘汰选择问题-Chrome和本机浏览器
我在安卓设备(三星Galaxy Tab4)上的原生浏览器和chrome浏览器中遇到了与下拉事件相关的单独问题Android淘汰选择问题-Chrome和本机浏览器,android,knockout.js,Android,Knockout.js,我在安卓设备(三星Galaxy Tab4)上的原生浏览器和chrome浏览器中遇到了与下拉事件相关的单独问题 Chrome-当在下拉列表中选择一个项目时,每次都会触发更改事件,但UI值在焦点更改之前不会更新 本机浏览器-第一次更改选择时,一切正常。与select的所有后续交互如下所示 ---第一次选择某个选项时,不会触发更改事件,也不会在UI上更新该值 ---第二次选择某个选项时,将触发更改事件,并在UI上更新值 我正在使用Ajax调用的knockout来填充下拉列表。以下是模板代码html
- Chrome-当在下拉列表中选择一个项目时,每次都会触发更改事件,但UI值在焦点更改之前不会更新
- 本机浏览器-第一次更改选择时,一切正常。与select的所有后续交互如下所示
- ---第一次选择某个选项时,不会触发更改事件,也不会在UI上更新该值
- ---第二次选择某个选项时,将触发更改事件,并在UI上更新值
有人遇到过这个问题吗?我相信这个问题是Android本机浏览器独有的,即使我去掉了敲除、引导等功能,仍然存在一些不一致性 使用jquery'on'和$(this.focus)方法来保证所单击的内容处于焦点位置似乎是可行的
$('.container').on('click','select',function(){
$(this).focus();
});
我使用了on,因为这个调用在我的_布局页面中,所以这些输入在加载时(通常)不会出现在页面上,但实际上可以放在任何地方。非常讨厌的bug,但我认为这是一个不错的解决方法
与chrome问题相关,这在chrome 40中得到了修复。*发布版这似乎与:MickJuice-有关于这方面的错误报告吗?
_dataService.getRemoteSiteData("Case/GetCaseStatusCodes?isForSomething=false", null, _loadCaseStatusCodes);
var _loadProceedingTypeCodes = function (data) {
_viewModel.buildModel({ proceedingTypeCodes: data }, _self);
_self.proceedingTypeCodes.loaded(true);
};
$('.container').on('click','select',function(){
$(this).focus();
});