2016-08-18 2 views
-3

Я разрабатываю приложение angularJS и также использую asp.net mvc. Я хочу открыть модальное всплывающее окно из angularJS, а затем в этом всплывающем окне отображается «View» mvc.Загрузите внешние js-файлы в угловое всплывающее окно или частичный вид js

Проблема, с которой я сталкиваюсь, что всплывающее окно открывается, но файлы js не загружаются в модальное всплывающее окно. Пожалуйста, помогите мне в этом вопросе по загрузке js-файлов в модальное всплывающее окно.

код

// main angular js 
angular.module('PopUpModule', ['ngResource','ngRoute','ui.bootstrap', 'uigridApp']) 
    .controller("ModalDemoCtrl", function ($scope, $uibModal, $log, $window) { 
    $scope.open = function (size) { 
       var modalInstance = $uibModal.open({ 
        templateUrl: 'UiGridDemo.html', 
        controller: 'uigridCtrl', 
        size: 'lg', 
        backdrop:'static', 
        windowClass: 'app-modal-window', 
           resolve: { 
         '$uibModalInstance': function() { 
          return function() { return modalInstance; } 
         } 
        } 

       }); 

// модальное всплывающее окно (вид Mvc файла .cshtml)

  //script 
<script src="Script/Script2.js"></script> 

     <body> 
       //html code goes here 
    </body> 

Проблема в том, что я хочу, чтобы загрузить JS скрипт (Script2.js), который оказывает «код JQuery », который должен быть загружен в модальное всплывающее окно, которое является view (.cshtml) mvc modal popup, открыто через angular.but, оно не загружается (Script2.js). Я проверил с помощью chrome dev.tools. как загрузить его, помогите мне с этим

+0

отправить соответствующий код –

+1

Вам не нужно загружать файлы js в частичное. просто добавьте эти файлы в родительский вид. они также будут доступны в частичном. возможно, мы сможем помочь вам, если вы разместите код. –

+0

нужно будет увидеть код – ElenaDBA

ответ

0

я получил ответ, если я загрузить файл JS в родительском файле, из которого я открываю модальные popup.This файл будет доступен для этого модального всплывающего,

0

Я думаю, что uigridCtrl не загружается в index.html, проверьте, загружен ли файл js в index.html, и в открытом методе нет необходимости упоминать свойство контроллера. Он будет повторно инициализировать контроллер.

Редактировать - если uigridCtrl совпадает с родительским контроллером html, не нужно упоминать в pop html. Он будет обладать той же областью, что и родительский html.

+0

Я добавил ссылку на скрипт в index.html, в котором определяется uigridctrl .. и контроллер является разным родителем и дочерним .. Я хочу загрузить script2.js в popup (view of mvc) .. который не загружается – swapnil

0

Решение, предложенное мною может быть использовано в если вы не захотите добавить файл или изменить код в родительском контроллере/директиве. Вы также должны добавить несколько дополнительных параметров. Он отлично работает, и мне не нужно вносить какие-либо изменения в родителя. Я предоставляю код из рабочего приложения.

$ocLazyLoad.load({ 
    name: '', // Module Name - Optional 
    files: [ 
     'viewRequestController.js', 
     'request-tpl.js' 
    ] 
}) 
.then(function() { 
    var modalInstance = $modal.open({ 
     templateUrl: 'viewRequest.html', 
     controller: 'popupCtrl', 
     controllerAs:'ctrl', 
     backdrop: 'static', 
     keyboard: false, 
     resolve: { 
      initVars: function(){ 
       return initVars; 
      } 
     } 
    }); 

    modalInstance.result.then(
     function(response) { }, 
     function(response) { 
      // Executes code when your modal closes. 
     } 
    ); 
}); 

Добавить $ ocLozyLoad и $ модальный параметр. Надеюсь, это полезно для вас.