Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS在ng键上执行方法:Ctrl+Enter_Angularjs - Fatal编程技术网

AngularJS在ng键上执行方法:Ctrl+Enter

AngularJS在ng键上执行方法:Ctrl+Enter,angularjs,Angularjs,我想提交文本点击Ctrl+Enter,但我找不到如何做到这一点。 我的代码100%适用于Enter或Ctrl单独按键,例如: <div ng-show="hiddenFriendId != null" ng-keydown="$event.which === 13 && sendMessage()"> <textarea id="messageText" placeholder="Input your message here. Use Ctrl + E

我想提交文本点击Ctrl+Enter,但我找不到如何做到这一点。 我的代码100%适用于Enter或Ctrl单独按键,例如:

<div ng-show="hiddenFriendId != null" ng-keydown="$event.which === 13 && sendMessage()">
    <textarea id="messageText" placeholder="Input your message here. Use Ctrl + Enter to send your message" cols="40" rows="3" my-maxlength="3" ng-model="messageText"></textarea>
</div>
但当我试着像这样的事情时-

<div ng-show="hiddenFriendId != null" ng-keydown="($event.which === 13 && $event.which === 17) && sendMessage()">
在不使用Ctrl键的情况下,单击Enter键开始执行方法是无效的。
有人能帮我吗?我只找到了一个按键的例子。

我有同样的问题,在这里找到了一个简单的解决方案

您所要做的就是在属性上创建一个自定义指令并使用它。 这对我来说就像一个老板:

指示

HTML

希望这有帮助

如果需要Ctrl+Enter,可以使用 如果$event.code==输入&&$event.which==10 如果需要Shift+Enter,可以使用 如果$event.shiftKey&&$event.which===13,您可以使用

//在控制器内部 public keyDownEvent=$event=>{ 如果$event.ctrlKey&&$event.keyCode==13{ 这是提交; }; }
无需编写代码行,只需插入代码段即可

<input type="text" placeholder="Write a comment" ng-model="data" ng-keypress="($event.charCode==10)? myfunc() : return">
尝试在下面的链接中使用上述代码进行Ctrl+Enter-press事件


可能重复是的,我可以将其作为一个指令来实现,但是,我只想确保没有更简单的方法。指令是最干净的方法
<textarea enter-submit="sendMessage()" /></textarea>
<input type="text" placeholder="Write a comment" ng-model="data" ng-keypress="($event.charCode==10)? myfunc() : return">