我以为这会在Stack Overflow上的某个地方得到解答,但我找不到它.
如果我正在收听按键事件,我应该使用.keyCode还是.which确定是否按下了Enter键?
我总是做类似以下的事情:
$("#someid").keypress(function(e) {
if (e.keyCode === 13) {
e.preventDefault();
// do something
}
});
Run Code Online (Sandbox Code Playgroud)
但我看到的是使用的例子.which而不是.keyCode.有什么不同?是否比另一个更加跨浏览器友好?
我试图在jQuery中捕获箭头按键,但没有触发任何事件.
$(function(){
$('html').keypress(function(e){
console.log(e);
});
});
Run Code Online (Sandbox Code Playgroud)
这会为字母数字键生成事件,但删除,箭头键等不会生成任何事件.
如果不抓住那些,我做错了什么?
我试图获取移动数字文本框的值,以使用angular.js验证其输入值.我是使用angular.js的新手,并不太确定如何实现这些事件并使用一些javascript来验证或操纵我的html代码上的表单输入.
这是我的HTML:
<div>
<label for="mobile_number">Mobile Number</label>
<input type="text" id="mobile_number" placeholder="+639178983214" required
ngcontroller="RegisterDataController" ng-keydown="keydown">
</div>
Run Code Online (Sandbox Code Playgroud)
而我的控制器:
function RegisterDataController($scope, $element) {
console.log('register data controller');
console.log($element);
$scope.keydown = function(keyEvent) {
console.log('keydown -'+keyEvent);
};
}
Run Code Online (Sandbox Code Playgroud)
我不确定如何在angular.js中使用keydown事件,我还搜索了如何正确使用它.我可以验证我对指令的输入吗?或者我应该使用像我所做的那样的控制器来使用keydown或keypress等事件?