Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将数据从模态传递到函数_Javascript_Jquery_Ruby On Rails_Ajax_Angularjs - Fatal编程技术网

Javascript 如何将数据从模态传递到函数

Javascript 如何将数据从模态传递到函数,javascript,jquery,ruby-on-rails,ajax,angularjs,Javascript,Jquery,Ruby On Rails,Ajax,Angularjs,我有一个模态表单,它有几个输入文本表单控件。如何将要发布的数据传递到数据库,以便更新ng grid 我是否在$scope.opencontroller部分调用我的ajaxcreate函数?还是决心 $scope.open = function (size) { var modalInstance = $modal.open({ templateUrl: 'myModalContent.html', controller: ModalInstanceCtrl, size

我有一个模态表单,它有几个输入文本表单控件。如何将要发布的数据传递到数据库,以便更新
ng grid

我是否在
$scope.open
controller部分调用我的
ajax
create函数?还是决心

$scope.open = function (size) {
  var modalInstance = $modal.open({
    templateUrl: 'myModalContent.html',
    controller: ModalInstanceCtrl,
    size: size,
    resolve: {
      items: function () {
        return $scope.items;
      }
    }
  });
};
}]);
create函数

     $scope.createMedicalServices = function(){
     var providerMedicalServiceAttributes = {};
     providerMedicalServiceAttributes.cash_price = $scope.cash_price
     providerMedicalServiceAttributes.average_price = $scope.average_price
     providerMedicalServiceAttributes.service = $scope.service
     var medicalServicesAttributes = {};
     medicalServicesAttributes.description = $scope.description
     medicalServicesAttributes.service = $scope.service
     var newMedicalService = ProviderMedicalService.create(providerMedicalServiceAttributes);
     $scope.provider_medical_services.push(newMedicalService);
     ProviderMedicalService.update(providerMedicalServiceAttributes, '/providers/services');
 };
从工厂创建函数(工厂进行删除、查询和创建)

模式表单的html

<div ng-controller="ModalDemoCtrl">
<script type="text/ng-template" id="myModalContent.html">
    <div class="header-modal">
        <h3>Add Service</h3>
    </div>
    <div class="modal-body">
        <form name="myForm" novalidate ng-submit="submit()">
            <div class="row well-text-padding">
                <div class="col-md-3 modal-form-tag">CPT Code</div>
                <div class="col-md-6">
                    <input type="text" class="form-control form-control-modal" ng-model="CPT_code" placeholder="CPT Code">
                </div>
            </div>   

            <label class="checkbox modal-check-box">
                <input type="checkbox" ng-model="No_CPT_code">Service does not have a associated CPT Code
            </label>

            <div class="row well-text-padding">
                <div class="col-md-3 modal-form-tag">Description</div>
                <div class="col-md-6">
                    <textarea class="form-control form-control-modal" rows="3" ng-model="Description" placeholder="Add a Description"></textarea>
                </div>
            </div>

            <div class="row well-text-padding">
                <div class="col-md-3 modal-form-tag">Average Cost</div>
                <div class="col-md-6">
                    <input type="text" class="form-control form-control-modal" ng-model="Average_cost" placeholder="$">
                </div>
            </div>

            <div class="row well-text-padding">
                <div class="col-md-3 modal-form-tag">Offered Price</div>
                <div class="col-md-6">
                    <input type="text" class="form-control form-control-modal" ng-model="Offered_price" placeholder="$">
                </div>
            </div>

            <div class="btn-row2 modal-button-row">
                <button class="btn btn-warning" ng-click="cancel()">Cancel</button>
                <button class="btn btn-primary" type="submit">Add Service</button>
            </div>
</script>

添加服务
CPT代码
服务没有关联的CPT代码
描述
平均成本
报价
取消
添加服务

您可以在单击添加服务时向服务器发出POST请求,也可以通过
$scope.$close()
将数据从modal传递到主控制器

示例如下:

模态控制器

var data = {
  CPT_code: $scope.CPT_code,
  No_CPT_code: $scope.No_CPT_code,
  Description: $scope.Description,
  Average_cost: $scope.Average_cost,
  Offered_price: $scope.Offered_price
};

$scope.$close(data); // pass the data through modal close event
然后在主控制器中使用promise获取数据

$scope.open = function (size) {
  var modalInstance = $modal.open({
     templateUrl: 'myModalContent.html',
     controller: ModalInstanceCtrl,
     size: size,
     resolve: {
        items: function () {
           return $scope.items;
        }
     }
  }).result.then(function (response) {
     var data = response;  // here is your data from your modal
  });
};
希望这有帮助

$scope.open = function (size) {
  var modalInstance = $modal.open({
     templateUrl: 'myModalContent.html',
     controller: ModalInstanceCtrl,
     size: size,
     resolve: {
        items: function () {
           return $scope.items;
        }
     }
  }).result.then(function (response) {
     var data = response;  // here is your data from your modal
  });
};