Я новичок в angularjs и записываю приложение, в котором открыт шаблон (inventory.html), содержащий сетку, он имеет кнопку подтверждения в нижней части сетки, которая вызывает validate() для проверки выбранного строки сетки, до этого мне нужен модальный всплывающее окно и введите имя пользователя в качестве ввода, а затем обработайте его дальше.AngularJS open modal от контроллера
моя функция проверки правильности внутри контроллера шаблона (то есть inventory.html). У меня есть app.js, который содержит информацию о маршрутизации и controller.js, которая содержит контроллеры для всех шаблонов.
Мой вопрос в том, есть ли способ, которым я могу открыть modal из validate(), принять пользовательский ввод и продолжить работу без написания отдельного контроллера для модального. (у меня есть отдельный userinput.html для модального.)
(Извините, если мой вопрос не ясно. Plz помощь я застрял с этим и перепробовал много вариантов из Интернета)
// Это мой контроллер
var app = angular.module('app', []);
app.controller('InventoryCtrl',['$scope','$location','$http','$modal',function($scope, $location, $http,$modal{console.log("Inside inventory ctrlr");
// Validate Function for validate button click
$scope.validate = function()
{
$scope.user = null;
$scope.build = null;
// Show modal to take user inputs for environment
var modalInstance = $modal.open(
{
controller : "inputModalCntrl",
templateUrl : "../partials/addEnvironment.html",
resolve: {
$callback: function() {
return function(param,user,build){
/* This function print value(param) dispached in modal controller */
console.log(param,user,build);
$scope.user = user;
$scope.build = build;
};
},
$send: function(){
return function(){
/* This function send param for the modal */
return {param1:"Hello Word Main"};
};
}
}
});
// This is further process of function
postdata = {};
var dlist = $scope.gridApi.selection.getSelectedRows();
postdata['dlist'] = dlist;
$http({ url: "/api/check", data: postdata, method: "POST" })
.success(function (response) { alert(response);})
.error(function() { alert('Error getting data');});
};
}]);
и это модальный контроллер
app.controller("inputModalCntrl", function($scope, $modalInstance, $callback, $send) {
$scope.init = function(){
/* This function print value(param) dispached in main controller */
console.log($send);
/* This send data to main controller */
$callback({param1:"Hello Word Modal", user :user, build : build});
};
});
Что вы пробовали до сих пор в кодировании? –
Извините, внесите свой вопрос. Попробуйте отредактировать сообщение –
@Sarjan Desai Пример из [link] (http://angular-ui.github.io/bootstrap/) также попытался поместить контроллер в отдельный файл, а затем обработать их, установив контроллер как встроенную функцию. – Shital