私はAngularJSでカスタムディレクティブを作成しています。このディレクティブは、データを表示するためのポップアップを開く必要があります。ポップアップのコードは別のhtmlページにあり、カスタム指示文はメインページにコードを挿入します。ポップアップを開くことはできますが、ポップアップのどこにでも既存のデータを表示することはできません。コントローラからカスタムディレクティブにデータを渡す方法
通常、私はメインページにデータを表示することができますが、データはカスタムディレクティブによって挿入されたhtmlに入りたくないだけです。
このように私はエラーは発生しませんが、データを渡すことはありません。
注:簡略化するために、ここでコードの一部をトリミングする必要がありました。
これは私のカスタムディレクティブです:
function updateCandidatePopup() {
var directive = {};
directive.restrict = "E";
directive.scope = {};
directive.templateUrl = "UpdateCandidatePopup.html";
directive.controller = function ($scope) {
$scope.SingleCandidate;
}
return directive;
}
私はそれを登録場所です:
myApp.directive("updateCandidatePopup", UpdateCandidatePopup);
これは私はこれがメインページに
<update-candidate-popup value="SingleCandidate" class="modal fade" ng-model="SingleCandidate"
id="myUpdateModal"
role="dialog"
popup-data="SingleCandidate">
zxc</update-candidate-popup>
をディレクティブを使用する方法ですUpdateCandidatePopup.html:
<div> {{SingleCandidate.FirstName}} </div>
これは、ポップアップ・コントローラにデータを表示することである:(FYIそれはまだトリミングされる)
myApp.controller('CandidatesController', function ($scope, $http, EmployerService, CandidateService) { //we injected localservice
//Select single data for update
$scope.getSingleData = function (C_ID) {
alert(C_ID);
$http.get('http://localhost:49921/api/Candidates/?C_ID=' + C_ID).success(function (data) {
$scope.SingleCandidate = data;
$scope.FName = $scope.SingleCandidate.FirstName;
alert($scope.SingleCandidate.FirstName);
alert($scope.FName);
}).error(function() {
$scope.error = "An Error has occured while loading posts!";
});
};
})。
コンテキストをよりよく理解し、エラーを表示するために、コントローラのコードをさらに残すことができますか? – sioesi
edit my post @ user3622488 – sioesi
私はあなたの答えをありがとう!私はこれを試してみたいが、あなたはこれらをどこで見つけたのか教えてくれますか? – user3622488