2016-10-13 108 views
2

我已经使用AngularJS和Elasticsearch构建了一个小型电影搜索应用程序。
我使用AngularJS UI Bootstrap Typeahead进行自动完成。

我的应用程序非常简单,惠普,结果页面,联系表格。
我想要做的是在搜索输入上使用ngKeydown/ngKeypress$state.go
我正在寻找的是,当用户开始在搜索输入中的hp上键入他们的查询时,页面会进入第一个按键的结果页面,然后建议开始出现。

事情是这样的:

<form> 
    <input type="text ng-keypress="$state.go('results')"> 
</form> 
+0

进样'$ state'做'$范围$状态= $ state'。 – ram1993

回答

1

你的控制器的依赖关系在你的html中并不神奇。您需要在控制器上创建该函数,并从您的html中调用该函数。

控制器:

function myController($scope, $state) { 
    $scope.navigate = function (destination) { 
     $state.go(destination); 
    } 
} 

HTML:在您的控制器

<form> 
    <input type="text ng-keypress="navigate('results')"> 
</form> 
+0

谢谢你的答案和例子 - 这就是为什么我接受你的,好东西 – user3125823

0

你需要在控制器注入$状态服务。您只能在html中使用$ scope或$ rootScope对象。所以你需要在按键或键盘上调用一些功能,并从控制器改变状态。