解决方案 »

  1.   

    你可以试试百度的webuploader,不过你获取客户端路径有什么用??
      

  2.   

    这个需求必须要使用第三方控件来实现。JS,JQUERY,FLASH都无法实现这个需求。
      

  3.   

    楼主试试这个控件:http://www.cnblogs.com/xproer/archive/2010/10/24/1859895.html
    此控件是基于标准HTTP协议实现的文件上传功能。优势是扩展性非常好,整合简单,支持批量上传文件和上传文件夹功能,上传前获取本地文件大小,适合各种简单WEB项目。
    另外一个特点是支持自动上传指定的本地文件。单文件上传演示上传本地文件代码
    使用步骤如下:
    1.调用AddFile函数添加本地文件,注意路径需要使用双斜框(\\)
    2.调用PostFirst函数开始上传文件。<script type="text/javascript" language="javascript">
         var fileMgr = new HttpUploaderMgr();
         fileMgr.Load();//加载控件 window.onload = function()
    {
    fileMgr.Init();//初始化控件
    //添加一个本地文件
    fileMgr.AddFile("D:\\Soft\\QQ2010.exe");
    fileMgr.PostFirst(); };
    </script>
    获取本地文件大小 服务器返回消息:<input id="txtFilePath" type="text" size="50" />
    <script type="text/javascript" language="javascript">
    var fileMgr = new HttpUploaderSingleMgr();
    fileMgr.Config["PostUrl"] = "http://localhost:8080/asp.net/upload.aspx";//指定文件上传地址,可以在这里设置文件服务器地址
    fileMgr.Load();
    function testFileSize()
    {
        var obj = new ActiveXObject(fileMgr.ActiveX["Partition"]);
        alert(obj.FileSize("D:\\VS2012.SP4.iso"));
    } function testFileLength()
    {
        var obj = new ActiveXObject(fileMgr.ActiveX["Partition"]);
        alert(obj.FileLength("D:\\VS2012.SP4.iso"));
    }
    </script>
    单文件整合代码: 服务器返回消息:<input id="txtFilePath" type="text" size="50" />
    <script type="text/javascript" language="javascript">
    var fileMgr = new HttpUploaderSingleMgr();
    fileMgr.Config["PostUrl"] = "http://localhost:8080/asp.net/upload.aspx";//指定文件上传地址,可以在这里设置文件服务器地址
    fileMgr.Load();
    //文件上传完成后执行的回调函数
    fileMgr.CompleteHook = function(msg)
    {
    document.getElementById("txtFilePath").value = msg;
    }; window.onload = function()
    {
    fileMgr.Init();
    };
    </script>示例下载:
    cab安装包(x86)
    cab安装包(x64)
    xpi安装包
    crx安装包
    exe安装包
    开发文档
    ASP示例
    ASP.NET示例
    JSP示例
    PHP示例
      

  4.   

    flash的话http://download.csdn.net/detail/tonggongzi/2811327
    <embed src="(这里是这个swf文件的地址)" FlashVars="(这里是上传的参数)" type="application/octet-stream" quality="high" width=300 height=200></embed>一直都好用,但是flash新版本导致发送时没有获取页面cookie只能把cookie中的登录信息通过url发送了
      

  5.   

    要想获取到客户端本地的url,一定要写浏览器插件才可以(因为权限问题),要不然是获取不到的。不过我很奇怪为何要获取客户端本地的url,这个通常是不需要的。