提前清除角度引导中的选定输入

生命值。

我正在使用http://angular-ui.github.io/bootstrap/#/typeahead作为简单的数组查找示例。

我想list()在我清空该input字段并按Enter触发目前,我可以编写另一个Clear按钮来执行此操作。但是,当输入为空时如何允许按键?我希望用户从列表中选择或仅清除它。不应有其他值。

的HTML

<!doctype html>
<html ng-app="plunker">

<head>
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js"></script>
  <script src="http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.10.0.js"></script>
  <script src="example.js"></script>
  <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
</head>

<body>

  <script type="text/ng-template" id="customTemplate.html">
    < a > < img ng - src = "http://upload.wikimedia.org/wikipedia/commons/thumb/{{match.model.flag}}"
    width = "16" > < span bind - html - unsafe = "match.label | typeaheadHighlight:query" > < /span>
  </a >
  </script>
  <div class='container-fluid' ng-controller="TypeaheadCtrl">

    <h4>Static arrays</h4>
    <pre>Model: {{selected | json}}</pre>
    <input type="text" typeahead-on-select="list()" ng-model="selected" typeahead="state for state in states | filter:$viewValue | limitTo:8" class="form-control">
    <button ng-click="clear()">Clear</button>
  </div>
</body>

</html>

Java脚本

angular.module('plunker', ['ui.bootstrap']);
function TypeaheadCtrl($scope, $http) {

  $scope.selected = undefined;
  $scope.states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Dakota', 'North Carolina', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'];

  $scope.list = function() {
    alert($scope.selected);
  }

  $scope.clear = function() {
    $scope.selected = undefined;
    $scope.list();
  }
}

http://plnkr.co/edit/roushmavR67rhXTJNc8K?p=preview

瑞安·Q

提前输入的目的是在可能的选择时给出提示,但也允许非选择(无论如何还是默认情况下)。您实际上想做的只是选择一个框:

<select ng-options='state for state in states'></select>

但是,如果您确实想通过仅允许提前输入选择选项来模拟此选择框提示,则需要使用ng-keypress指令并传递$ event内部变量:

控制器添加:

$scope.testAllowed = function( evt ){
    if( evt.keyCode === 13 && 
        $scope.selected && 
        $scope.states.indexOf( $scope.selected ) < 0){

      $scope.selected = '';
    }
  }

输入html附加内容:

ng-keypress="testAllowed($event)"

例子plunkr

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

提前清除角度引导中的选定输入

来自分类Dev

如何从AngularUI提前输入中清除文本

来自分类Dev

阅读前清除标准输入

来自分类Dev

R 中的闪亮:清除选定的输入

来自分类Dev

提前输入控件的向上/向下箭头键问题(角度引导UI)

来自分类Dev

清除ui-select角度中的选定选项

来自分类Dev

提前禁用React Bootstrap异步输入中的一项或多项选定项

来自分类Dev

引导程序输入字段中的位置清除按钮

来自分类Dev

引导程序输入字段中的位置清除按钮

来自分类Dev

Bootstraps 在角度 5 中提前输入的问题

来自分类Dev

清除输入文本框中的图标的角度方式

来自分类Dev

追加前清除div

来自分类Dev

提前角度引导程序不响应单击或箭头键

来自分类Dev

angularJS + UI引导提前输入:filter:$ viewValue不起作用

来自分类Dev

ajax,php和twitter的引导程序提前输入

来自分类Dev

PHP 中的 Flash 消息在它应该清除之前清除 $_SESSION 键。

来自分类Dev

Linux:python:在raw_input()之前清除输入缓冲区

来自分类Dev

在另一个输入请求之前清除cin缓冲区,c ++

来自分类Dev

Bootstrap提前输入和角度模式不起作用

来自分类Dev

Bootstrap提前输入和角度模式不起作用

来自分类Dev

UI.Bootstrap角度提前输入和Firebase数组

来自分类Dev

将引导日期时间选择器中的选定日期插入输入字段

来自分类Dev

回车前清除行

来自分类Dev

推送前清除Git提交

来自分类Dev

单击数据关闭按钮时,如何清除引导程序模式中的所有输入字段?

来自分类Dev

在JavaScript中搜索和提前输入

来自分类Dev

恢复Nautilus中的提前输入(UbuntuGNOME)

来自分类Dev

AngularJS提前输入和结果中的html

来自分类Dev

输入文字内的角度清除图标

Related 相关文章

热门标签

归档