সহজ কথায়
এইচটিএমএল - কেবল কোড নীচে যুক্ত করুন
<form name="upload" class="form" data-ng-submit="addFile()">
<input type="file" name="file" multiple
onchange="angular.element(this).scope().uploadedFile(this)" />
<button type="submit">Upload </button>
</form>
নিয়ন্ত্রকের মধ্যে - আপনি যখন "ফাইল ফাইল আপলোড" ক্লিক করেন তখন এই ফাংশনটি বলা হয়। এটি ফাইল আপলোড করবে। আপনি এটি কনসোল করতে পারেন
$scope.uploadedFile = function(element) {
$scope.$apply(function($scope) {
$scope.files = element.files;
});
}
নিয়ন্ত্রণকারীগুলিতে আরও যুক্ত করুন - নীচে কোডটি ফাংশনে যুক্ত করুন। আপনি "এপিআই (পোষ্ট) মারছেন" " বোতামে ক্লিক করার সময় এই ফাংশনটি বলা হয় । এটি ব্যাকএন্ডে ফাইল (যা আপলোড করা হয়েছে) এবং ফর্ম-ডেটা প্রেরণ করবে।
var url = httpURL + "/reporttojson"
var files=$scope.files;
for ( var i = 0; i < files.length; i++)
{
var fd = new FormData();
angular.forEach(files,function(file){
fd.append('file',file);
});
var data ={
msg : message,
sub : sub,
sendMail: sendMail,
selectUsersAcknowledge:false
};
fd.append("data", JSON.stringify(data));
$http.post(url, fd, {
withCredentials : false,
headers : {
'Content-Type' : undefined
},
transformRequest : angular.identity
}).success(function(data)
{
toastr.success("Notification sent successfully","",{timeOut: 2000});
$scope.removereport()
$timeout(function() {
location.reload();
}, 1000);
}).error(function(data)
{
toastr.success("Error in Sending Notification","",{timeOut: 2000});
$scope.removereport()
});
}
এই ক্ষেত্রে .. আমি ফর্ম ডেটা হিসাবে কোড নীচে যোগ
var data ={
msg : message,
sub : sub,
sendMail: sendMail,
selectUsersAcknowledge:false
};