方案一: 

<%@ 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. Java 枚举类

    如果要定义一个枚举类: public enum Size { SAMLL, MEDIUM, LARGE, EXTRA, EXTRA_LARGE}; 实际上,这个声明定义的类型是一个类,它刚好有4个实例 ...

  2. Java SE 基础:常用关键字

    Java SE 基础:常用关键字 常用关键字表

  3. 【前端】使用readline模块实现Node.js的输入输出

    'use strict'; function f(x) { // do something... } var readline = require('readline'); //创建readline接 ...

  4. 简单介绍一下R中的几种统计分布及常用模型

    统计学上分布有很多,在R中基本都有描述.因能力有限,我们就挑选几个常用的.比较重要的简单介绍一下每种分布的定义,公式,以及在R中的展示. 统计分布每一种分布有四个函数:d――density(密度函数) ...

  5. [iOS][issis] requestLocationWithReGeocode AMapLocationErrorDomain Code=5 "取消"

    Tip: IOS 使用高德地图一次定位  (在该博客找到了解决答案) 在定位时如果出现下面这个Error,说明你的locationManager没有设置成全局变量,导致locationManager提 ...

  6. centos7 dokcer fastdfs

    docker run --name=fastdfstmp -tid centos /bin/bash docker cp /home/fastdfs fastdfstmp:/home docker e ...

  7. js设计模式总结-单例模式

    单例模式 解决的问题 保证实例只有一个,避免多个实现,从全局来看,这个实例的状态是唯一的. 实现原理 设置一个变量来记录实例,通过检测该变量是否为空来决定是否创建实例 非透明单例 所谓非透明就是用户在 ...

  8. c++第一天

    今天完成的事情: [主线] 1.熟悉cpp文件的编译运行 2.初步认识输入输出 值得关注的地方是: 流的概念.endl除了结束当前行外,还有刷新缓冲区的功能.以及对 输入输出运算符(<< ...

  9. UML图

    三.说明: 1.类图 第一层显示的是类名,如果是抽象类,就用斜体表示. 第二层是类的特性,通常就是字段和属性. 第三层是类的操作,通常是方法和行为. 注意:'+' 表示 public, '-' 表示 ...

  10. YYCache设计思路及源码学习

    设计思路 利用YYCache来进行操作,实质操作分为了内存缓存操作(YYMemoryCache)和硬盘缓存操作(YYDiskCache).内存缓存设计一般是在内存中开辟一个空间用以保存请求的数据(一般 ...