AngularJS Firefox 中的嵌套函数调用
AngularJS nested function call in Firefox
我已经设置了一个简单的 fiddle,通过在文本框中按 enter 应该会显示警报。它在最新的 IE 和 Chrome 中运行良好,但在 Firefox 中不起作用:fiddle
HTML
<div ng-app="app" ng-controller="appCtrl as form">
<input type="text" ng-keypress="form.ProcessSearchKeyPress($event)">
</div>
JavaScript:
var app = angular.module('app',[]);
// controller
app.controller('appCtrl', function () {
this.Search = function ()
{
alert('search');
};
this.ProcessSearchKeyPress = function (event)
{
if (event.charCode == 13)
{
this.Search();
}
};
});
在 Firefox 的情况下,似乎从未调用控制器中定义的函数搜索。我是不是遗漏了什么或者是错误?
提前致谢。
charCode
属性 不是标准的并且已弃用。使用跨浏览器 keyCode
,它也适用于 Firefox:
if (event.keyCode == 13) {
this.Search();
}
演示:http://jsfiddle.net/prztey7m/3/
我已经设置了一个简单的 fiddle,通过在文本框中按 enter 应该会显示警报。它在最新的 IE 和 Chrome 中运行良好,但在 Firefox 中不起作用:fiddle
HTML
<div ng-app="app" ng-controller="appCtrl as form">
<input type="text" ng-keypress="form.ProcessSearchKeyPress($event)">
</div>
JavaScript:
var app = angular.module('app',[]);
// controller
app.controller('appCtrl', function () {
this.Search = function ()
{
alert('search');
};
this.ProcessSearchKeyPress = function (event)
{
if (event.charCode == 13)
{
this.Search();
}
};
});
在 Firefox 的情况下,似乎从未调用控制器中定义的函数搜索。我是不是遗漏了什么或者是错误?
提前致谢。
charCode
属性 不是标准的并且已弃用。使用跨浏览器 keyCode
,它也适用于 Firefox:
if (event.keyCode == 13) {
this.Search();
}