角度输入类型提交不会阻止在ng-click上提交表单

时间:2016-06-07 15:06:14

标签: angularjs razor

我想要完成的只是展示一个" loading ..."使用AngularJS单击提交按钮时。 我认为使用

应该很容易
<form ng-if="!export.buttonClicked">
   ... various input values without ng-model
   <input type="submit" value="Start export" class="btn btn-default" ng-click="export.buttonClicked=true;">
</form>
<div ng-if="export.buttonClicked">
   loading...
</div>

我怎么会这么错。 似乎像Angular一样阻止了这样的默认表单提交。显示加载div工作得很好,但我需要提交表单(服务器必须计算很多,所以它响应缓慢,我想显示加载...而不是按钮一旦被点击)

我不能使用ng-submit,因为我必须将AngularJS与Razor结合使用,而且我不想要任何ng-form或ng-model ......

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

如果你有一个角度控制器绑定到页面或div,只需使用ng-click中的函数,如下所示:

<div ng-controller="sampleController" style="text-align:center">
    <button ng-click="buttonClickedFunction()">Submit</button>
    <p>{{message}}</p>
</div>

然后在你的控制器中:

yourAppName.controller('sampleController', function($scope) {
    $scope.buttonClickedFunction = function() {
        $scope.message = "Loading...";
        // Whatever else you wish to do with your button/function.
    };
});

如果这是您要拍摄的内容,这会在点击按钮时将加载加到屏幕上?