2015-03-02 94 views
0

您好,我有一个需要从指令中删除templateURL,而不得不从服务器使用主页中的自定义标记库(Java)加载客户端DOM。现在是否可以使用指令将其中的函数链接到已经加载的DOM?将指令绑定到angularjs中已经加载的DOM元素?

MainPage.jsp

<div class="col-sm-10"> 
    <div class="input-group input-group-sm col-sm-12"> 
     <div class="nopadding" provider provider-name="providerForFilter" topclass="providerForFilter" class="col-sm-10" > 
      <prefixrj:lookupprovider data="" defaultValue="" filterPosition="" showActive="" ></prefixrj:lookupprovider> 
     </div> 
    </div> 
</div> 

lookup.js

var providerlookup = f.module('providerlookup', []); 
    providerlookup.directive('provider', function($http, $timeout) { 
     return { 
      restrict: 'AE', 
      replace: 'true', 
      templateUrl: '/mobiledoc/jsp/webemr/lookup/provider-lookup.jsp', 
      scope: { 
       topclass: "@", 
       providerName: "=providerName", 
       providerClick: "&", 
       clearProviderData: "&", 
       disableproviderlookup: "=", 
       multiSelection: "@" 
      }, 
      link: function(scope, element, attributes) { 
       var isLoading = false; 
       var timer = ""; 
       scope.editable = true; 
       scope.multiSelection = scope.multiSelection == undefined ? false : scope.multiSelection; 
       if (!scope.providerName) { 
        scope.providerName = {provider: ""}; 
       } 
       ..................... 
       ..................... 
       } 
      }; 
      }); 

现在不是在templateUrl 提供商lookup.jsp,我要加载的内容是使用JSP定制标记库显示在MainPage.jsp中。

回答

0

你可以有ng-if开关2个DOM元素:

<directive ng-if="someVar"></directive> 
<directive ng-if="!someVar"></directive> 

通过这样做,你可以通过不同的数据到指令这是更有效的。

相关问题