ng-submit不会在角度js中工作

时间:2014-06-17 17:31:54

标签: angularjs angularjs-directive ng-submit

我知道还有很多其他类似的问题,但我在那里找不到答案。

<html ng-app="app" ng-controller="AppController">    
...
    <form class="navbar-form navbar-left" role="search" ng-submit="alert()">
         <div class="form-group">
             <input type="text" class="form-control search" ng-model="text" />
         </div>
         <button type="submit" class="btn btn-default icon-default icon-search">Submit                          </button>
    </form>
</html>

2 个答案:

答案 0 :(得分:3)

你无法像普通javascript中那样在角度中使用alert(window.alert)函数。这是来自角度$window服务docs的示例:

<script>
  function Ctrl($scope, $window) {
    $scope.greeting = 'Hello, World!';
    $scope.doGreeting = function(greeting) {
        $window.alert(greeting);
    };
  }
</script>
<div ng-controller="Ctrl">
  <input type="text" ng-model="greeting" />
  <button ng-click="doGreeting(greeting)">ALERT</button>
</div>

如果您在控制器中放置doGreeting(根据需要命名)功能并注入$window,那么您的示例应该有效:

...
<form class="navbar-form navbar-left" role="search" ng-submit="doGreeting()">
...

答案 1 :(得分:2)

尝试通过在按钮标记中添加ng-click来提交表单,并通过在ng-click中传递表单来调用提交功能。该功能是您在控制器中编写逻辑的地方。提交