将值从指令传递给控制器
passing values to controller from directive
我正在创建一个 Web 应用程序,我在其中为 input type file
创建了一个指令
app.directive('customFileInput', [function () {
return {
link: function (scope, element, attrs) {
element.on('change', function (evt) {
var files = evt.target.files;
scope.filename = files[0].name
console.log(scope.filename);
});
}
}
}]);
这是我从
获取文件名的指令
<input id="file" type="file" ng-model="mdfile" ng-change="filepath()" class="form-control" custom-file-input />
这个输入框
现在在我的控制器中,我想传递我从指令中获得的文件名
$scope.savefunction = function () {
var f = document.getElementById('file').files[0],
r = new FileReader();
r.onloadend = function (e) {
$scope.data = e.target.result;
}
r.readAsDataURL(f);
$http.get('/employeeregistration.asmx/sav', {
params: {
data: $scope.data,
//i want to pass the value here
}
}).then(function (response) {
})
}
我如何传递值
在DDO
中使用scope: false
return {
restrict: “EA”,
scope: false,
link: function(scope, elem, attr){
// write code here.
}
}
name filename
两处相同。 example
或
使用isolated scope
:
return {
restrict: "EA",
scope: {
filename: "="
},
见isolated example
希望这会有所帮助。
我正在创建一个 Web 应用程序,我在其中为 input type file
app.directive('customFileInput', [function () {
return {
link: function (scope, element, attrs) {
element.on('change', function (evt) {
var files = evt.target.files;
scope.filename = files[0].name
console.log(scope.filename);
});
}
}
}]);
这是我从
获取文件名的指令<input id="file" type="file" ng-model="mdfile" ng-change="filepath()" class="form-control" custom-file-input />
这个输入框
现在在我的控制器中,我想传递我从指令中获得的文件名
$scope.savefunction = function () {
var f = document.getElementById('file').files[0],
r = new FileReader();
r.onloadend = function (e) {
$scope.data = e.target.result;
}
r.readAsDataURL(f);
$http.get('/employeeregistration.asmx/sav', {
params: {
data: $scope.data,
//i want to pass the value here
}
}).then(function (response) {
})
}
我如何传递值
在DDO
scope: false
return {
restrict: “EA”,
scope: false,
link: function(scope, elem, attr){
// write code here.
}
}
name filename
两处相同。 example
或
使用isolated scope
:
return {
restrict: "EA",
scope: {
filename: "="
},
见isolated example 希望这会有所帮助。