2016-11-17 63 views
0

我有我的指令,它带来了下降的学校倒访问从templateURL一个ID在角指令

function campuses(){ 
    return{ 
     restrict: "AE", 
     scope:{ 
      display: "@", 
      optGroup: "@", 
      orderBy: "@", 
      showGrades: "@", 
      dirClass: "@", 
      campusCls: "@", 
      gradeCls: "@" 
     }, 
     transclude: true, 
     templateUrl: "XXXX/XXXXX/campus-dropdown/campus-template.html", 
     controller: campusCtrl, 
     link: campusLink 
    } 
} 

正由模板URL

<div class="form-group {{campusCls}}"> 
<select 
id="campus-dropdown" 
class="form-control" 
ng-model="campusModel" 
ng-options="item.campusNum as item.campusLabel {{customGroupBy}} for item in campusList {{customOrderBy}} track by item.campusNum" 
title="{{display}} campuses"> 
    <option value="">Select all Campuses</option> 
</select> 

加载HTML文件

我遇到的主要问题是ID校园下拉到我的指令。 每次我尝试的document.getElementById或$(“#校园下拉”)我只是找回空值

我已经尝试访问该变量在控制器和我的链接,但仍没有运气

+1

如何快速plunker或爵士小提琴,显示问题,然后我们可以尝试解决这个问题 – Chanthu

回答

1

scope:{ display: "@", optGroup: "@", ...} 

工作plunk

您需要创建/使用比其他范围的自定义属性命名的东西:在你的指令与这个正在创建一个分离的范围。

在你的控制器:

$scope.foo = { 
     display: "", 
     optGroup: "", 
     orderBy: "", 
     showGrades: "", 
     dirClass: "", 
     campusCls: "", 
     gradeCls: "" 
    } 

HTML:

<campus-dir foo="{{foo}}"></campus-dir> 

指令:

foo: "@"