作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 angularjs 的初学者。我读了很多关于文件上传等的内容。但是找不到我将进一步描述的这个案例的任何主题。
我想在下面的代码中借助按钮(带有搜索名称)选择一个文件
然后当我们点击第二个按钮(带有上传名称)时,我选择的文件上传到我已经在 D:\Uploaded Files 中创建的本地驱动器
例如我想用搜索按钮从桌面选择一个文件,然后当我们点击上传时,这个文件复制到 D:\Uploaded Files
如果可能的话,请用 fiddler 告诉我。谢谢大家。
谢谢大家的分享
最佳答案
您需要使用如下指令。
uploader.directive("readfile", [function () {
return {
scope: {
readfile: "="
},
link: function (scope, element, attributes) {
element.bind("change", function (changeEvent) {
var reader = new FileReader();
reader.onload = function (loadEvent) {
scope.$apply(function () {
scope.readfile = { "FileName":changeEvent.target.value.split('\\').pop() , "Content":loadEvent.target.result , "Size":loadEvent.total };
});
}
reader.readAsDataURL(changeEvent.target.files[0]);
});
}
}
}]);
上传文件:
function MyCTRL($scope, $http, $modal)
{
$scope.currentFile="";
$scope.currentFileGroup="";
$scope.currentFileDescription="";
$scope.attachedFile=[];
$scope.fileUpload=function ()
{
$scope.attachedFile.push ({
"fileGUID": GUID() + "." + $scope.currentFile.FileName.split('.').pop(),
"fileName": $scope.currentFile.FileName,
"fileGroup": $scope.currentFileGroup,
"fileDescription": $scope.currentFileDescription,
"fileSize": $scope.currentFile.Size,
"fileContent": $scope.currentFile.Content,
"fileState": "wait"
});
$scope.currentFile = "";
$scope.currentFileGroup = "";
$scope.currentFileDescription = "";
$scope.AddBtnShow=false;
var saveFile = new dataStructure();
var fileContent = "";
for (var i=0; i < $scope.attachedFile.length; i++) {
if($scope.attachedFile[i].fileState!="sent") {
fileContent = $scope.attachedFile[i].fileContent;
saveFile.EntityInfo[0].Name = $scope.attachedFile[i].fileGUID;
saveFile.EntityInfo[0].Type = "CUSTOMFILE";
saveFile.EntityData = [
{"Content": fileContent}
];
var inputjsondata = JSON.stringify(saveFile);
$http({ method: 'POST', url: rootURL + '/data/savefilecontent', data: inputjsondata, dataType: 'text', processData: false, async: false, headers: { 'Content-Type': 'application/json; charset=utf-8' } }).success(function (data) {
});
$scope.attachedFile[i].fileState = "sent";
$scope.formData.Attachments.push({
"FilenameGUID": $scope.attachedFile[i].fileGUID,
"Filename": $scope.attachedFile[i].fileName,
"Group": $scope.attachedFile[i].fileGroup,
"Description": $scope.attachedFile[i].fileDescription,
"UploadDate": uploadGregorianDate()
});
}
}
};
现在一切都很好。
关于angularjs - 使用angularjs在本地驱动器中上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24401680/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!