AngularJS ng-options / Typeahead表达式语法

时间:2015-12-17 12:13:15

标签: angularjs angular-ui-bootstrap typeahead.js

我试图用ng-options或Typeahead表达式语法找到AngularJS select,但是我找不到整个东西,所以我从这里和那里收集信息,这就是我想出的:< / p>

2 个答案:

答案 0 :(得分:5)

表达式语法(这是完整语法,大多数是可选的):

main

示例:假设我们有一个学生列表:

PagesController

让我们说我们想在typeAhead输入中使用此列表,但是: 1.我们希望弹出窗口下拉显示:“名字 - 姓氏”但是当用户选择项目时,我们希望列表中的整个项目填充在ng-model中。 2.我们想过滤选择只显示5个元素 3.我们希望弹出下拉列表仅显示与用户输入相关的内容。

所以这就是它的样子:

def main
  @callendar = Callendar.find(params[:callendar_id])
end

如果你们有更多的东西可以添加,请知道我可以使用它......

答案 1 :(得分:1)

您也可以更改模板(例如以特定方式显示字段,然后点击另一个设置输入)

在html文件中:

    <script type="text/ng-template" id="deterFormACTemplate.html">
        <a ng-bind-html="match.model.displayed | unsafe"></a>
    </script>


     <input typeahead-template-url="deterFormACTemplate.html" 
               uib-typeahead="item as item.field for item in autocomplete(...)"
               typeahead-on-select="mymodel=$model.field;"
               typeahead-wait-ms="500" />
控制器中的

     $scope.autocomplete = function ( ){
            return  [ {'field':'..', "displayed":"..."},{'field':'..', "displayed":"..."}, .. ];
     }