方案一: 

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.aspx.cs" Inherits="SchoolWeb.test" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>无标题页</title>
    <script language="javascript" type="text/javascript">
            function fileUP()
            { 
                var file = document.getElementById("<%=fileuploadImage.ClientID %>");
                file.style.display="none";
                file.click(); 
                return;
            } 
            function fileSet()
            {
                var file = document.getElementById("<%=fileuploadImage.ClientID %>");
                if(file.value !="")
                {
                    document.getElementById("<%=txtFile.ClientID %>").value = file.value;
                }
                return;
            }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="txtFile" runat="server"></asp:TextBox>
        <input id="btnFile" type="button" value="上传" onclick="javascript:return fileUP();" />
        <asp:FileUpload ID="fileuploadImage" runat="server" Style="display:none" />
    </div>
    <p>
        <asp:Button ID="Button1" runat="server" Text="保存" OnClick="Button1_Click" />
    </p>
    </form>
</body>
</html>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace SchoolWeb
{
    public partial class test : System.Web.UI.Page
    {
        protected string FileName = string.Empty;
        protected void Page_Load(object sender, EventArgs e)
        {
                FileName = txtFile.Text;
                this.fileuploadImage.Attributes.Add("onchange", "javascript:return fileSet();");
                txtFile.Attributes.Add("readonly", "readonly");
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            this.txtFile.Text = FileName;
            Response.Write(FileName);
        }
    }
}

-------------------

方案二:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="testc.aspx.cs" Inherits="SchoolWeb.testc" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>无标题页</title>
    <script type="text/javascript" language="javascript">
        function UploadOnpropertychange()  
        {  
            //JS获取上传控件的值,即所上传文件的绝对路径  
            var varUploadFile = document.getElementByIdx("FileUpload1").value;  
            //将路径值通过split函数切割分成一个数组集合  
            //使用这个函数,这个地方主要是为了获取文件名  
            var varArray = varUploadFile.split('\\');  
             
            //测试  
//            for (var i = 0;i < varArray.length;i++)  
//            {  
//                if (i == varArray.length - 1)  
//                {  
//                    alert(varArray[i]);  
//                }  
//            }  
            //最后将所需要的文件名赋给文本框  
            document.getElementByIdx("txtUploadFile").value = varArray[varArray.length - 1];  
        }  
    </script>
</head>
<body>
    <form id="form1" runat="server">
  <asp:TextBox ID="txtUploadFile" runat="server"></asp:TextBox>
            <input type="button" value="测试" onclick="javascript:document.getElementById('FileUpload1').click();" />
            <asp:FileUpload ID="FileUpload1" runat="server"  />
    </form>
</body>
</html>

using System;

using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace SchoolWeb
{
    public partial class testc : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                //先将控件隐藏
                this.FileUpload1.Attributes.Add("style", "display:none");
                //监视属性变化,此时主要用于捕捉文件路径的写入值
                this.FileUpload1.Attributes.Add("onpropertychange", "UploadOnpropertychange()");
            }
        }
    }
}

textbox button 模拟fileupload的更多相关文章

  1. 如何实现修改FileUpload样式

    这里先隐藏FileUpload 然后用一个input button和一个text来模拟FileUpload 具体代码为 <asp:FileUpload ID="FileUpload1& ...

  2. [uwp]MVVM之MVVMLight,一个登录注销过程的简单模拟

    之前学MVVM,从ViewModelBase,RelayCommand都是自己瞎写,许多地方处理的不好,接触到MVVMLigth后,就感觉省事多了. 那么久我现在学习MVVMLight的收获,简单完成 ...

  3. c# button Command

    internal class DelegateCommand : ICommand { private readonly Action _execute; private readonly Func& ...

  4. [知识库分享系列] 二、.NET(ASP.NET)

    最近时间又有了新的想法,当我用新的眼光在整理一些很老的知识库时,发现很多东西都已经过时,或者是很基础很零碎的知识点.如果分享出去大家不看倒好,更担心的是会误人子弟,但为了保证此系列的完整,还是选择分享 ...

  5. UWP开发入门(十七)——判断设备类型及响应VirtualKey

    蜀黍我做的工作跟IM软件有关,UWP同时会跑在电脑和手机上.电脑和手机的使用习惯不尽一致,通常我倾向于根据窗口尺寸来进行布局的变化,但是特定的操作习惯是依赖于设备类型,而不是屏幕尺寸的,比如聊天窗口的 ...

  6. FineUI上传控件

    文件上传 现在就简单多了,并且也漂亮多了,参考这个示例. 1: <ext:SimpleForm ID="SimpleForm1" BodyPadding="5px& ...

  7. JavaScript实现form表单的多文件上传

    form表单的多文件上传,具体内容如下 formData对象可以使用一系列的键值对来模拟一个完整的表单,然后使用Ajax来发送这个表单 使用<form>表单初始化FormData对象的方式 ...

  8. UWP控件与DataBind

    在uwp开发中必不可少的一个环节就是各种通用的控件的开发,所以在闲暇时间汇总了一下在uwp开发中控件的几种常用写法,以及属性的几种绑定方式,有可能不全面,请大家多多包涵 :) 1.先从win10新增的 ...

  9. WPF入门:数据绑定

    上一篇我们将XAML大概做了个了解 ,这篇将继续学习WPF数据绑定的相关内容 数据源与控件的Binding Binding作为数据传送UI的通道,通过INotityPropertyChanged接口的 ...

随机推荐

  1. 贪吃蛇,JavaScript,效果,鼠标事件

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>鼠 ...

  2. linux 调用java main方法

    #!/bin/shexport LANG=zh_CNtimestamp=`date +%Y%m%d%H%M`/opt/java6/bin/java -Xms128m -Xmx512m -Dfile.e ...

  3. Git使用指南(2)——工作区,暂存区,版本库

    1 工作区修改添加到暂存区 git add 2 暂存区提交到版本库 git commit 3 版本库更新到暂存区 git reset HEAD 4 删除暂存区文件 git rm --cached< ...

  4. .net平台下获取高精度时间类

    原文:http://www.it118.org/specials/321869dd-98cb-431b-b6d2-82d973cd739d/d940a15c-0d36-4369-8de0-b07cf3 ...

  5. MySQL之alter语句用法总结

    MySQL之alter语句用法总结 1:删除列 ALTER TABLE [表名字] DROP [列名称] 2:增加列 ALTER TABLE [表名字] ADD [列名称] INT NOT NULL  ...

  6. HQL查询——关联和连接

    HQL查询--关联和连接 为了便于理解有关的使用关联和连接进行HQL查询,首先提供两个具有关联关系的持久化类:Person类和MyEvent类 Person类: import javax.persis ...

  7. Word 宏命令大全

      1.   为宏命令指定快捷键.在WORD中,操作可以通过菜单项或工具栏按钮实现,如果功能项有对应的快捷键的话,利用快捷键可以快速实现我们需要的功能.如最常见的CTRL+O.CTRL+A等等.WOR ...

  8. 3.密码pasuwado————记第一次超越Candy?

    激动人心的2016.11.4模拟赛结束了 更激动人心的是我得了90分,第一次超越豪哥,特立文纪念. 3.密码 [问题描述] 哪里有压迫,哪里就有反抗. moreD的宠物在法庭的帮助下终于反抗了.作为一 ...

  9. css伪类的展现

    常见的伪类选择器 :link :hover :active :visited 如果为以上几个伪类赋予相同css属性名,不同的css属性值 <!DOCTYPE html> <html ...

  10. ubuntu16.04 + ubuntu + apache2 配置apache解析php

    给apache安装php扩展:  sudo apt-get install libapache2-mod-php 注:这是apache解析php文件的关键,光修改配置文件不安装扩展是不起作用的. 目录 ...