在键入!!(两次!或四次!)和!@(组合)时,角度bootstrap ui打印头显示下拉结果时遇到问题。我尝试添加过滤器,但过滤器没有正常工作只显示缓存中的值左右。我想如果用户键入任何特殊字符,它不会显示任何建议
plunker https://plnkr.co/edit/E0IiqNTsgp0sP5Yggyau?p=preview
在控制器中过滤
$scope.startsWith = function (state, viewValue) {
//var pattern = new RegExp(/[~`!@#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/); //unacceptable chars
var pattern = /^[a-zA-Z ]*$/;
if ((pattern.test(viewValue))) {
return true;
}
}
$scope.states= ['Alabama','california','Texas'];
HTML
<input type="text" uib-typeahead="state for state in states | filter:$viewValue:startsWith | limitTo:3" autocomplete="off" >
我应该做什么改变,当使用类型任何时候特殊字符喜欢!!要么 !!!!或!@或任何像阻止显示非匹配结果的东西。
我尝试了所有其他事情让它工作但不是。感谢有些人可以立即回复
答案 0 :(得分:0)
var pattern = /^[a-zA-Z]*$/;
应该做的伎俩,只匹配单词。也许您需要阻止用户输入特殊字符,例如:
<input type="text" pattern="[A-Za-z]" />