以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]手机应用,小部分iPhone手机(一般买三年了)下边实例中:  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=121970)

--  作者:ytzn
--  发布时间:2018/7/16 17:37:00
--  [求助]手机应用,小部分iPhone手机(一般买三年了)下边实例中:

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"

MessageBox.Show("这一行运行")
        For Each key As String In e.Files.Keys

MessageBox.Show("这一行不运行")
            For Each fln As String In e.Files(key)
                e.SaveFile(key,fln,"d:\\web\\uploadfiles\\" & fln) \'
保存接收到的文件
            Next
        Next
        e.WriteString("OK")

End
 Select


上面示例中的运行到下边所示这遍历处不遍历

 


        For Each key As String In e.Files.Keys

MessageBox.Show("这一行不运行")
            For Each fln As String In e.Files(key)
                e.SaveFile(key,fln,"d:\\web\\uploadfiles\\" & fln) \'
保存接收到的文件
            Next
        Next


也就是不上传,老师,见过这种情况吗?怎么解决?多谢!


一般多数iPhone手机或安卓手机运行正常



[此贴子已经被作者于2018/7/16 17:39:54编辑过]

--  作者:bzfc57
--  发布时间:2018/7/16 17:40:00
--  
老版本苹果手机的用ajax上传表单数据  参考
[此贴子已经被作者于2018/7/16 17:40:17编辑过]

--  作者:ytzn
--  发布时间:2018/7/16 17:42:00
--  
多谢二楼!您是说下边这个吧?弄了

1、在"d:\\web"目录下,建立一个子目录lib,在这个目录建立一个文本文件,文件名为"ajaxform.js",文件内容为:

function submitForm(){
    show("tst1",2000);
    var result = submitAjaxForm(\'form1\',\'afterSubmit\');
}

function afterSubmit(result){
    hide("tst1");
    if (result==\'OK\') {
        show("tst2");
        location="upload.htm";
    }
    else{
        show("tst3",2000);
    }
}
--  作者:有点甜
--  发布时间:2018/7/16 17:52:00
--  

弹出头信息看看,对比一下正常、不正常的,有什么区别。

 

Dim sb As new Stringbuilder
For Each k As String In e.Request.headers
    sb.appendline(k & " : "  & e.request.headers(k))
Next
msgbox(sb.Tostring)


--  作者:bzfc57
--  发布时间:2018/7/16 18:04:00
--  
submitAjaxForm 这里面还是传的formdata数据 i6以下的手机升级到11.3后就无法保存数据了,这个大坑折腾了很久才发现的。 
得用json通过ajax上传才不会出现问题

--  作者:有点甜
--  发布时间:2018/7/16 18:35:00
--  
以下是引用bzfc57在2018/7/16 18:04:00的发言:
submitAjaxForm 这里面还是传的formdata数据 i6以下的手机升级到11.3后就无法保存数据了,这个大坑折腾了很久才发现的。 
得用json通过ajax上传才不会出现问题

 

什么原因?具体怎么解决的?


--  作者:ytzn
--  发布时间:2018/7/16 18:40:00
--  
多谢老师指导,我水平有限,再学习一下帮助
[此贴子已经被作者于2018/7/16 18:57:52编辑过]

--  作者:浙江仔
--  发布时间:2018/7/16 20:36:00
--  
这个问题也困扰我好久,希望班长飞船和甜版指导解决这个坑,这几天一直在调试直接用微信jssdk 上传照片,但是ui和交互没法很好处理!!
--  作者:有点蓝
--  发布时间:2018/7/16 20:43:00
--  
试试使用json的方式提交数据:http://www.foxtable.com/mobilehelp/scr/0107.htm
--  作者:浙江仔
--  发布时间:2018/7/16 21:06:00
--  
怎么把表单数据转成json,包括图片和数据