我有以下angularjs指令:如何使用angularjs指令数据绑定的MVC局部视图
app.directive("partnersInfoView", function ($http) {
return {
restrict: 'A',
link: function ($scope, element) {
$http.get("/home/PartnerInfoTab") // immediately call to retrieve partial
.success(function (data) {
element.html(data); // replace insides of this element with response
});
}
};
});
基本上进行到一个MVC控制器,并返回一个局部视图
public ActionResult PartnerInfoTab()
{
return PartialView("../ManagePartners/PartnerInfoTab");
}
在父视图我有以下声明:
<div id="genericController" ng-controller="GenericController">
<div partners-info-view></div>
</div>
这是利用角度指令渲染局部视图,到目前为止,一切都很好。在我的角genericController的我有一个范围变量:
$scope.Data = data;
其中数据它是正值从REST服务
JSON响应例如响应JSON对象
{[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]}
遇到的问题IM是,我不能在指令模板中的$ scope.Data绑定变量:
<div id="PartnerInfoTab">
<div class="form-group">
<label class="col-md-2 control-label">Name</label>
<div class="col-md-8">
<input id="txt_name" class="form-control" type="text" ng-model="Data.firstName">
</div>
</div>
</div>
我的问题是,你如何通过在父范围的角度指令为了能够在部分视图中数据绑定元素。我在想什么?
在此先感谢。
谢谢你是对的没有必要调用$ http.get,但仍然无法访问父范围,我只能访问在根视图范围内的根作用域,但这不是我想要的。任何其他想法? –
你不是在指令内部创建独立的作用域,所以你应该可以访问'partnersInfoView'指令的父作用域 –
谢谢,它现在像一个魅力一样工作,最后问题是一个点有点不同,因为我ommited自定义指令是在引导模式中使用。但你的回答非常有帮助,并解决了最初的帖子。 –