【发布时间】:2015-07-14 14:56:15
【问题描述】:
我的网站的用户应该使用我的表单中的按钮输入一个简单的代码,然后他应该点击Ok 或按回车键并继续处理。
问题是 enter 键没有提交我的表单,正在执行从ng-click 调用的其他方法。如何避免回车键调用ng-click方法?
myapp.js
var myApp = angular.module('myApp',[]);
myApp.controller('myformcontroller', ['$scope', function ($scope){
// Procesing data from form.
$scope.signin = function () {
}
}]);
myApp.controller('mycontroller', ['$scope', function ($scope){
$scope.do = function() {
alert('ng-click pressed!');
}
}]);
myform.html
<div ng-controller="myformcontroller">
<form name="myForm"
role="form"
ng-submit="signin()"
novalidate>
<input type="text"/>
<div ng-controller="mycontroller">
<a href="javascript:void(0);" ng-click="do()">
clickme!
</a>
</div>
<button type="submit">Ok</button>
</form>
</div>
按click me 并在My Fiddle 之后按enter 键
【问题讨论】:
-
这没有任何意义;
ng-click不会将<a>更改为<button>;您在此处展示的样本似乎不会出现您所描述的症状。 -
不,这不是问题
-
看起来更像是一个范围问题,表单与
<a>标签在不同的控制器范围内。为什么表单内有不同的控制器?表单的控制器在哪里? -
因为 do() 方法在提交表单之前向用户显示简单的消息。我正在处理我的项目中的强制性应用程序结构。
-
@charlietfl 请查看我编辑的问题。
标签: javascript jquery angularjs