当前位置: 首页 > 面试题库 >

如何在AngularJS中检测onKeyUp?

卢嘉誉
2023-03-14
问题内容

如何在AngularJS中检测onKeyUp?

我正在寻找类似于ngChange的’ngOnkeyup’指令,但是找不到合适的东西。

如果没有这样的指令,是否有一种从浏览器本地onkeyup事件调用控制器的干净方法?


问题答案:

编辑:请参阅下面的maklemenz的第二个答案,它引用了新的内置ng-keyup指令

您可以使用angular-ui库:

使用angular-ui,您可以

<input ui-event="{keyup: 'myFn($event)'}"

如果您不想使用其他库,最有效且最简单的方法是:

JS

myApp.directive('onKeyup', function() {
  return function(scope, elm, attrs) {
    elm.bind("keyup", function() {
      scope.$apply(attrs.onKeyup);
    });
  };
});

HTML:

<input on-keyup="count = count + 1">

编辑
:如果要检测按下了哪个键,则实际上有两个基本选项。您可以在指令中添加属性以处理指令中允许的键,也可以将按下的键传递给控制器​​。我通常会建议该指令处理key方法。

这是两种方式的示例:http :
//jsfiddle.net/bYUa3/2



 类似资料:
  • 问题内容: 如何在AngularJS中检测onKeyUp? 我正在寻找类似于ngChange的’ngOnkeyup’指令,但是找不到合适的东西。 如果没有这样的指令,是否有一种从浏览器本地onkeyup事件调用控制器的干净方法? 问题答案: 编辑:请参阅下面的maklemenz的第二个答案,它引用了新的内置ng-keyup指令 您可以使用angular-ui库: 使用angular-ui,您可以

  • 问题内容: 我是angularjs的新手。如何在angularjs中检测到userAgent。可以在控制器中使用它吗?尝试了以下类似的方法,但是没有运气! 我需要专门检测IE9! 问题答案: 就像Eliran Malka询问的那样,为什么需要检查IE 9? 检测浏览器的品牌和版本通常是一种难闻的气味。通常,这意味着如果您需要JavaScript来检测特定版本的浏览器,则代码会有更大的问题。 在某些

  • 我是新的angularjs。我怎么能检测用户代理在angularjs。有可能在控制器中使用它吗?尝试了下面这样的东西,但没有运气! 我需要专门检测IE9!

  • 问题内容: 我正在使用Javascript命令:setInterval。我喜欢在用户离开页面时停止它。 该代码似乎运行良好:http : //jsfiddle.net/PQz5k/ 它检测用户何时离开页面。当用户单击链接以转到其他HTML页面或URL,或者用户重新加载页面时,它将执行Javascript代码。 但是,当我从一个AngularJS模板转到另一个模板时,它不起作用。例如,如果我在tem

  • 问题内容: 我尝试了一些方法来检测代码中的EOF,但仍然无法正常工作。我尝试使用BufferedReader,Scanner和char u001a标记EOF,但对我的代码仍然没有任何意义。这是我的最后一个代码: 该程序应该在到达EOF时停止运行,但是我不知道为什么,由于某些原因,它会继续运行并导致运行时错误。请帮忙。顺便说一句,我是新来的,如果对我的问题还不清楚,很抱歉,谢谢您:) 问题答案: 由

  • 我尝试了一些方法来检测我的代码中的EOF,但它仍然不起作用。我试过使用BufferedReader、Scanner和使用charu001a来标记EOF,但仍然对我的代码没有任何意义。这里是我的最后一段代码: 程序应该在已经到达EOF时停止,但我不知道为什么,由于某些原因,它继续运行并导致运行时错误。请帮帮忙。顺便说一下,我是新来的,如果我的问题不是很清楚,很抱歉不能理解,谢谢你之前:)