以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  submitAjaxForm函数,实测图片等已上传好了,但是还是会返回"上传失败"  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=174089)

--  作者:kylin
--  发布时间:2021/12/31 1:54:00
--  submitAjaxForm函数,实测图片等已上传好了,但是还是会返回"上传失败"

Select Case e.Path
    Case "upload.htm"
        Dim wb As New weui
        wb.AddForm("","form1","receive.htm")
        With wb.AddInputGroup("form1","ipg1",
"
文件上传")
            With .AddUploader("up128",
"
照片",True)
                .AllowDelete = True
\'
允许删除
                .Incremental = True
\'
允许重复选择文件或连续拍照
            End With
        End With
        With wb.AddButtonGroup("form1","btg1",True)
            .Add("btn1",
"
确定", "button").Attribute= "" \'调用js函数上传
        End With
        wb.AddToast("","tst1",
"
正在上传",1)
        wb.AddToast("","tst2",
"
上传成功",0)
        wb.AddToast("","tst3",
"
上传失败",0).Icon= "warn"
        wb.AppendHTML("<script src=\'./lib/ajaxform.js\'></script>")
\'
引入脚本文件
        e.WriteString(wb.Build)
\'
生成网页
    Case "receive.htm"
        For Each key As String In e.Files.Keys
            For Each fln As String In e.Files(key)
               
e.SaveFile(key,fln,"d:\\web\\uploadfiles\\" & fln) \'保存接收到的文件
            Next
        Next
        e.WriteString("OK")

End
Select

[此贴子已经被作者于2021/12/31 1:54:11编辑过]

--  作者:有点蓝
--  发布时间:2021/12/31 8:37:00
--  
js文件代码呢?
--  作者:kylin
--  发布时间:2021/12/31 8:52:00
--  
函数代码:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建 文本文档.txt


JS代码:
function submitWithProgress(){
    var result = submitAjaxForm(\'form1\',\'afterSubmit\',true,\'tst1\');
}


function afterSubmit(result){
    hide("tst1");
    if (result==\'OK\') {
        show("tst2");
        location="stfedt.htm";
    }
    else{
        show("tst3",5000);
    }
}


现在的情况是:
图片提交保存,会提示失败,但是呢,实际去看后台数图片数据是保存到数据库里头了。

当然保存成功这段代码也不会执行了:
  \'保存并生成增加成功提示页面
        pr!FlTm = td.Date \'永远保留最新的更新时间
        pr.save()
        
        Dim bcts = "增加成功"
        If e.GetValues.ContainsKey("sid") = False \'表示新增的
        Else
            bcts = "修改成功"
        End If
        With wb.AddMsgPage("","msgpage",bcts, "辛勤的园丁,为你点赞") \'生成成功提示页
            .AddButton("btn1","继续增加","./stfedt.htm?id="& e.GetValues("page"))
            .AddButton("btn5", "返回","default.htm")
        End With
        e.WriteString(wb.Build)

[此贴子已经被作者于2021/12/31 8:56:59编辑过]

--  作者:有点蓝
--  发布时间:2021/12/31 9:29:00
--  
接收页面只能返回"OK",或者不OK,如下红色代码:
    Case "receive.htm"
        For Each key As String In e.Files.Keys
            For Each fln As String In e.Files(key)
                
e.SaveFile(key,fln,"d:\\web\\uploadfiles\\" & fln) \'保存接收到的文件
            Next
        Next
        e.WriteString("OK")

End
 Select
因为js是这样判断的
   if (result==\'OK\') { //如果返回字符串OK,就提示成功
        show("tst2");
        location="stfedt.htm";
    }
    else{//否则就是失败
        show("tst3",5000);
    }
您的接收页面返回值都是这些【e.WriteString(wb.Build)】当然不OK了


--  作者:kylin
--  发布时间:2021/12/31 9:52:00
--  
多谢指点!!!
--  作者:kylin
--  发布时间:2021/12/31 10:33:00
--  
已按照蓝版指导的完成了。

那么,我希望将类似这样的诉求,怎么加入到JS里头?
 With wb.AddMsgPage("","msgpage",bcts, "辛勤的园丁,为你点赞") \'生成成功提示页
            .AddButton("btn1","继续增加","./stfedt.htm?id="& e.GetValues("page"))
            .AddButton("btn5", "返回","default.htm")
        End With

讨教:如果改以上的JS函数?然后能达到有两个按钮,比较友好嘛

--  作者:有点蓝
--  发布时间:2021/12/31 10:35:00
--  
使用Dialoghttp://www.foxtable.com/mobilehelp/topics/0080.htm

http://www.foxtable.com/mobilehelp/topics/0102.htm
[此贴子已经被作者于2021/12/31 10:35:43编辑过]