在 AngularJs 模式中提交表单

Submit form in AngularJs Modal

我正在尝试提交一个简单的表单,并在 AngularJs:

中编写的模式(弹出窗口)中输入
myApp.run(function($rootScope, $modal) {

    $rootScope.$on('$stateChangeStart', function(event, toState) {

        if (toState.name == 'statePopup') {

            $modal.open({
                templateUrl : 'popup.html',
                controller : 'AllegatiController',
                backdrop: 'static'
            });

            event.preventDefault();

        } else {

            return;
        }
    })
})

表格html是:

<form>
    <div class="form-group">
        <label>File Name:</label> 
        <input type="text"  ng-model="name"></input>
    </div>
    <button ng-click="save()" class="btn btn-primary">Save</button>

</form>

在我的 controller.js 中:$scope.name 未定义

已更新:

这是我的控制器:

function myController($scope) {
    console.log("all myController");


     $scope.save = function() {

        var name= $scope.name;
        console.log('name is '+name);


    }
}

似乎在为所有应用程序定义的模型的 运行 中似乎缺少 $scope 参数?

我的代码中遗漏了什么?

如果你有这个:

$modal.open({
    templateUrl : 'popup.html',
    controller : 'AllegatiController',
    backdrop: 'static'
});

你的控制器应该是:

myApp.controller('AllegatiController', ['$scope', function ($scope) {
    console.log('all myController');

    $scope.save = function () {
       var name = $scope.name;
       console.log('name is '+name);
    }
}]);

通过更新我的 ui-bootstrap 版本从 0.12.0

解决了问题

这是对我有帮助的link:

Link angularJs modal submit form