我在bootstrap上使用select 2主题为angular。
默认情况下,它具有内置的“搜索”功能,可过滤选项行。 我不想要这一行,所以我在网上寻找解决方案。 常见的解决方案是使用ng-disabled,它适用于某些浏览器,但仍会在手机上弹出键盘。
我使用了此plunker中描述的'return false'方法: http://plnkr.co/edit/jE0qBpewzvHG5oamB7vQ?p=preview&s=TIKKc2Zmyq5lcvXI
然而,当我在移动设备上打开它时(Chrome上的lg g2)我有两个问题:
弹出键盘。
我可以输入(奇怪的是我不能输入英文但我可以输入希伯来语)
pluker上描述的代码:
<ui-select multiple ng-model="multipleDemo.colors" onkeypress="return false;" theme="select2" ng-disabled="disabled" style="width: 300px;">
<ui-select-match placeholder="Select colors...">
<span ng-if="!disabled">{{$item}}</span>
<span ng-if="disabled">
<a class="glyphicon glyphicon-remove" ng-click="$select.removeChoice($index)" tabindex="-1"></a>
{{$item}}
</span>
</ui-select-match>
<ui-select-choices repeat="color in availableColors | filter:$select.search">
{{color}}
</ui-select-choices>
我不希望弹出键盘,我也不想让用户输入。
这在原生Android浏览器上无法重现,只有Chrome。
答案 0 :(得分:1)
最终我结合了几个解决方案 - 最有帮助的解决方案是 - html-mobile-forcing-the-soft-keyboard-to-hide
现在我的选择看起来像这样:
<ui-select
ng-model="multipleDemo.colors"
onkeypress="return false;"
theme="select2"
ng-disabled="disabled"
onfocus="blur();" >
.
.
</ui-select>