首页 > Angular提交Form无法触发Controller的函数,请帮看

Angular提交Form无法触发Controller的函数,请帮看

刚刚学习Angular.写了一个双向绑定的表单,不知道为啥错了,触发不到js的函数。

HTML:

<table class="table" data-ng-controller="WordsCtrl" data-ng-show="words.length">
    <thead>
        <tr><td>Keyword</td><td>Action</td></tr>
    </thead>
    <tbody>
        <form name="wordForm" ng-submit="addWord()">
            <tr><td><input ng-model="word.keyword" /></td><td><select ng-model="word.action"><option value="pass">pass</option><option value="deny">deny</option></select></td><td><input  type="submit" value="Add" /></td></tr>
            <!--INPUT-->
            <tr ng-show="word.keyword"><td>{{word.keyword}}</td><td>{{word.action}}</td><td ng-show="word.action=='pass'"><span class="text-success"><i class="fa fa-check"></i></span></td><td ng-show="word.action=='deny'"><span class="text-danger"><i class="fa fa-warning"></i></span></td></tr>
            <!--SHOW-->
            <tr data-ng-repeat="w in words"><td>{{w.keyword}}</td><td>{{w.action}}</td><td ng-show="w.action=='pass'"><span class="text-success"><i class="fa fa-check"></i></span></td><td ng-show="w.action=='deny'"><span class="text-danger"><i class="fa fa-warning"></i></span></td></tr>
        </form>
    </tbody>
</table>

JS:

/**
 * Words Controller
 */

angular
    .module('RDash')
    .controller('WordsCtrl', ['$scope', WordsCtrl]);

function WordsCtrl($scope) {
    $scope.word = {}

    $scope.words = [{
        keyword: 'hello',
        action: 'pass',
    }, {
        keyword: 'world',
        action: 'deny',
    }, {
        keyword: '你好',
        action: 'pass',
    }, {
        keyword: '世界',
        action: 'deny',
    }];

    $scope.addWord = function() {
        alert("ddd");
        $scope.words.push($scope.word);
    };

    $scope.closeLog = function(index) {
        $scope.words.splice(index, 1);
    };
}

自己回答一下,一个解决方法是用了ng-click事件。

【热门文章】
【热门文章】