Foxtable(狐表)用户栏目专家坐堂 → Uploader 中止上传


  共有1356人关注过本帖树形打印复制链接

主题:Uploader 中止上传

帅哥哟,离线,有人找我吗?
科明123
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2024/8/6 21:22:00
Uploader 中止上传  发帖心情 Post By:2024/8/14 16:23:00 [只看该作者]

在change事件里监听图片日期,若不符合条件,则中止该文件上传或删除该文件,这段代码应怎样写?

const up1 = document.getElementById('up1');

up1.addEventListener('change', getdatetimeoriginal,false);

function getdatetimeoriginal(e){
var file = e.target.files[0];
var OriginalDate;
EXIF.getData(file, function(){
OriginalDate = EXIF.getTag(this, 'DateTimeOriginal');
});
if (!CheckDate(OriginalDate)){
//中止上传
}
}


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/8/14 16:28:00 [只看该作者]

上传的代码在什么地方?

 回到顶部
帅哥哟,离线,有人找我吗?
科明123
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2024/8/6 21:22:00
  发帖心情 Post By:2024/8/14 16:39:00 [只看该作者]

With wb.AddInputGroup("form1","ipg5","")
With .AddUploader("up1","附件(上传拍照):")
.AllowDelete = True '允许删除
.Incremental = True '允许重复选择文件或连续拍照
For Each filename as string In Filenames
If Filesys.DirectoryExists(ProjectPath & "web\" & UserName) = False Then
Filesys.CreateDirectory(ProjectPath & "web\" & UserName)
End If
If ftp.DownLoad(filename,ProjectPath & "web\" & UserName & "\" & FileSys.GetName(filename)) = True Then
.AddImage("./" & UserName & "/" & FileSys.GetName(filename))
End If
Next
End With
.AddHidenValue("Opdate0","2018-01-01")
.AddHidenValue("Dpdate0","2018-01-01")

End With

wb.AppendHTML("<script src='./lib/exif.js'></script>") '引入脚本文件
wb.AppendHTML("<script src='./lib/getexif1.js'></script>") '引入脚本文件


 回到顶部
帅哥哟,离线,有人找我吗?
科明123
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2024/8/6 21:22:00
  发帖心情 Post By:2024/8/14 16:45:00 [只看该作者]

测试了一下,这个change事件是发生在调文件到UPLOADER图像分组框中发生的,此时还没有提交。这个过程能否中止文件调入UPLOADER分组框?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/8/14 17:21:00 [只看该作者]

3楼是接收,不是上传。前端上传的代码在什么地方?

 回到顶部
帅哥哟,离线,有人找我吗?
科明123
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2024/8/6 21:22:00
  发帖心情 Post By:2024/8/14 17:28:00 [只看该作者]

With wb.AddInputGroup("form1","ipg5","")
With .AddUploader("up1","附件(上传拍照):")
.AllowDelete = True '允许删除
.Incremental = True '允许重复选择文件或连续拍照
End With
.AddHidenValue("Opdate0","2018-01-01")
.AddHidenValue("Dpdate0","2018-01-01")

End With

wb.AppendHTML("<script src='./lib/exif.js'></script>") '引入脚本文件
wb.AppendHTML("<script src='./lib/getexif.js'></script>") '引入脚本文件
' wb.AppendHTML("<script>up1.addEventListener('change', function(e){EXIF.getData(e.target.files[0], function() {document.getElementById('pdate').value=EXIF.getTag(this, 'DateTimeOriginal')})},false );</script>")
' wb.AppendHTML("<script>up1.addEventListener('change', function(e){EXIF.getData(e.target.files[0], function() {document.getElementById('pdate1').value=EXIF.getTag(this, 'DateTimeDigitized')})},false );</script>")

        With wb.AddButtonGroup("form1","btg1")
            .Add("btn1","保存","button").Attribute ="onclick = submitForm()"
            .Add("btn2","返回","button").Attribute =""
        End With  



function submitForm(){
    show("tst1",2000);
    var result = submitAjaxForm('form1','',false);
    if (result =='OK') {show('dlg1')}
    else if (result == 'Photo') {show('dlg3')}
else {showDialog('dlg2','错误',result)}
}


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/8/14 17:33:00 [只看该作者]

使用js变量判断

const up1 = document.getElementById('up1');

up1.addEventListener('change', getdatetimeoriginal,false);
var isupload = true;
function getdatetimeoriginal(e){
var file = e.target.files[0];
var OriginalDate;
EXIF.getData(file, function(){
OriginalDate = EXIF.getTag(this, 'DateTimeOriginal');
});
if (!CheckDate(OriginalDate)){
//中止上传
isupload = false; }
else{isupload = true;}
}


function submitForm(){
if (isupload ){
    show("tst1",2000);
    var result = submitAjaxForm('form1','',false);
    if (result =='OK') {show('dlg1')}
    else if (result == 'Photo') {show('dlg3')}
 else {showDialog('dlg2','错误',result)}
}
}

 回到顶部
帅哥哟,离线,有人找我吗?
科明123
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:5 积分:96 威望:0 精华:0 注册:2024/8/6 21:22:00
  发帖心情 Post By:2024/8/14 18:25:00 [只看该作者]

这样处理会取消所有文件的上传,能不能排除不符合要求的文件,再提交其余符合要求的文件?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110784 积分:563852 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/8/15 8:36:00 [只看该作者]

试试,下面,如果不行就没有办法,只能使用第三方的上传组件,或者使用原生的file input标签自己做

if (!CheckDate(OriginalDate)){
//中止上传
e.target.files.splice(0, 1);
  }

 回到顶部