以AngularJs模式提交表单
我正在尝试提交一个简单的表单,并以AngularJs编写的模式(弹出窗口)进行输入:以AngularJs模式提交表单,angularjs,angular-ui-bootstrap,Angularjs,Angular Ui Bootstrap,我正在尝试提交一个简单的表单,并以AngularJs编写的模式(弹出窗口)进行输入: myApp.run(function($rootScope, $modal) { $rootScope.$on('$stateChangeStart', function(event, toState) { if (toState.name == 'statePopup') { $modal.open({ templateUr
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>
也许在为所有应用程序定义的模型运行中,似乎遗漏了$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);
}
}]);
通过从0.12.0更新my ui bootsrap版本解决了此问题 这是一个帮助我的链接:
您的控制器在哪里?
save()
方法在哪里?我用管制员更新了我的问题检查此演示:好,但我想在应用程序的run函数中定义我的模式,以确保模式将从应用程序中的任何位置打开。我认为它在模式中遗漏了scope属性,但我不知道如何添加它是的,它是这样的,但有不同的定义,应用程序可以识别控制器,当我在模式中提交表单时,值不会传递给控制器
myApp.controller('AllegatiController', ['$scope', function ($scope) {
console.log('all myController');
$scope.save = function () {
var name = $scope.name;
console.log('name is '+name);
}
}]);