以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  用uploader,上传文件,我想在一旁边做个文本框,显示上传文件的名字  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=129480)

--  作者:goe12345
--  发布时间:2018/12/29 11:39:00
--  用uploader,上传文件,我想在一旁边做个文本框,显示上传文件的名字

用uploader+js,不能显示文件名,

[httpserver]:

With wb.AddInputGroup("form1","ipg1","上传文件")
                With .AddUploader("文件地址","上传通知",False) \'True表示允许上传多个文件
                    .TextPosition = 0 \'标题靠左
                    .Attribute = "" \'调用js函数,调置文件名称
                End With
                With .AddInput("文件名称","文件名称","Text")
                    .Readonly=True
                End With
                .AddInput("文件号","文件号","text")   \'要求所有文件要有编号
                .AddInput("文件摘要","文件摘要","text")   \'要求所有文件要有编号
               
            End With
            wb.AppendHTML("<script src=\'./lib/ajaxform.js\'></script>") \'引入脚本文件

 

js:

 

function setfln(){     //设置文件名
    var result= submitAjaxFileds(\'Passfln.htm\',\'\',\'文件地址\',false);
alert(result);
    if(result){
        var vals=result.split("|");
alert(vals.length);
        if(vals.length==1){
alert(vals[0]);
            document.getElementById("文件名").value=vals[0];
   //document.getElementById("文件编号").value=vals[1];
           
        }
    }
}

 

回调:

   Case "Passfln.htm"
        Dim pps As String
        For Each key As String In e.Files.Keys
                If key = "文件地址" Then
                    For Each fln As String In e.Files(key)
                       pps=fln

                    Next           
                End If
         Next
                e.WriteString(pps)

[此贴子已经被作者于2018/12/29 11:48:21编辑过]

--  作者:有点蓝
--  发布时间:2018/12/29 11:51:00
--  
Uploader无法绑定触发的事件,做个上传按钮
--  作者:goe12345
--  发布时间:2018/12/29 12:44:00
--  由于没点确认,用按扭,怎样才能获取uploader中的文件名

由于没点确认,用按扭,怎样才能获取uploader中的文件名。

这个上传按扭怎么做。是.AddVcodeButton,还是addbutton

 

[此贴子已经被作者于2018/12/29 12:45:14编辑过]

--  作者:goe12345
--  发布时间:2018/12/29 13:35:00
--  做了一个按扭,但是上传uploader数据时,是空值,

 With wb.AddInputGroup("form1","ipg1","上传文件")
                With .AddUploader("文件地址","通知浏览",False) \'True表示允许上传多个文件
                    .TextPosition = 0 \'标题靠左
                End With
                With .AddInputCell("ic1")                   
                    .AddLabel("文件名称标签","通知名称",0) \'增加标签,0显示在左边
                    .AddInput("文件名称","text",1).Readonly=True \'增加输入框,1表示显示在中间
                    .AddVcodeButton("sc","通知上传->",2).Attribute=""
                End With
               
                .AddInput("文件号","文件号","text")   \'要求所有文件要有编号
                .AddInput("文件摘要","文件摘要","text")   \'要求所有文件要有编号
               
            End With
            wb.AppendHTML("<script src=\'./lib/ajaxform.js\'></script>") \'引入脚本文件
**********

我把uploader不绑定后,做了一个.AddVcodeButton,我在调试时,发现传递的是空值,我直接其它一个字串,比如“aaa ",js能收到,也能正常显示

就是说,

    Case "Passfln.htm"
        Dim pps As String
        For Each key As String In e.Files.Keys
            If key = "文件地址" Then
                For Each fln As String In e.Files(key)
                    pps=fln
                Next
            End If
        Next

        e.WriteString(pps)

 

pps是空值,把pps 换成字串"aaa",就能正常

看来e.fils(key)没有传递过来值

请给预帮助!!


--  作者:有点蓝
--  发布时间:2018/12/29 13:36:00
--  
按钮直接调用setfln函数就可以了。2个都可以的

.Add("mnudAdd", "上传").Att
ribute="onclick=\'addnew()\'" \'调用js函数


[此贴子已经被作者于2018/12/29 13:36:53编辑过]

--  作者:goe12345
--  发布时间:2018/12/29 13:40:00
--  好了

改成以下情况就好了,

    Case "Passfln.htm"
        e.WriteString(e.Values("文件地址"))