AngularJS 使输入响应输入的指令
AngularJS directive to make input respond on enter
如果问题含糊不清,我深表歉意,我不太确定还能如何解释我的需要。我想到了一些肮脏的选项,但我是一个新手 AngularJS 编码器,我觉得有一个干净简单的方法可以用指令实现这个?
我需要的是一个输入框,它等待 ENTER 键按下,然后触发,并在收到它时执行操作。该操作是根据在按下回车键之前输入的内容从外部 JSON 对象简单获取。
每次按下换行键时,该字段也应重置为空。
:
吴提交救援!您可以通过将输入包装在一个表单(具有名称)中来轻松地使其工作。一大优点:这将适用于移动设备,他们将在键盘旁边有一个 "submit" 的快捷方式。
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app>
<form
name="theFormNeedsANameForNgSubmitToFire"
ng-submit="myScopeInfos='Enter pressed and mytext was '+mytext;mytext='';">
<input type="text" ng-model="mytext"/>
</form>
<div>{{myScopeInfos}}</div>
</div>
这应该让你开始:
app.directive('enter', function() {
return function(scope, element, attrs) {
element.bind("keydown keypress", function(event) {
if(event.which === 13) {
}
});
};
});
要重置输入,只需将输入绑定到模型并将模型设置为空字符串即可。
要与您的服务器通信,您可以使用 angular 的 http 模块。
您可以使用 angular keyUp directive,event.keycode == 13
html
<input ng-keyup="enterThis($event)" ng-model=""></input>
控制器
$scope.enterThis = function(event){
if (event.keyCode === 13){
//do whatever
//clear the input
$scope.enterInput = '';
}
如果问题含糊不清,我深表歉意,我不太确定还能如何解释我的需要。我想到了一些肮脏的选项,但我是一个新手 AngularJS 编码器,我觉得有一个干净简单的方法可以用指令实现这个?
我需要的是一个输入框,它等待 ENTER 键按下,然后触发,并在收到它时执行操作。该操作是根据在按下回车键之前输入的内容从外部 JSON 对象简单获取。
每次按下换行键时,该字段也应重置为空。
:
吴提交救援!您可以通过将输入包装在一个表单(具有名称)中来轻松地使其工作。一大优点:这将适用于移动设备,他们将在键盘旁边有一个 "submit" 的快捷方式。
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app>
<form
name="theFormNeedsANameForNgSubmitToFire"
ng-submit="myScopeInfos='Enter pressed and mytext was '+mytext;mytext='';">
<input type="text" ng-model="mytext"/>
</form>
<div>{{myScopeInfos}}</div>
</div>
这应该让你开始:
app.directive('enter', function() {
return function(scope, element, attrs) {
element.bind("keydown keypress", function(event) {
if(event.which === 13) {
}
});
};
});
要重置输入,只需将输入绑定到模型并将模型设置为空字符串即可。
要与您的服务器通信,您可以使用 angular 的 http 模块。
您可以使用 angular keyUp directive,event.keycode == 13
html
<input ng-keyup="enterThis($event)" ng-model=""></input>
控制器
$scope.enterThis = function(event){
if (event.keyCode === 13){
//do whatever
//clear the input
$scope.enterInput = '';
}