本帖最后由 jinxingfeng_cn 于 2010-12-30 11:49:10 编辑

解决方案 »

  1.   

    文档:http://demo.swfupload.org/Documentation/google
    http://www.cnblogs.com/goody9807/archive/2008/11/04/1326098.htmlhttp://blog.csdn.net/ctowoo/archive/2009/10/22/4712322.aspx
      

  2.   

    总数回调函数,具体说下哪个函数,什么参数啊?
    比如handlers.js文件中,我改下面的函数:
    function uploadComplete(file) {
    if (this.getStats().files_queued === 0) {
    document.getElementById(this.customSettings.cancelButtonId).disabled = true;
    var filesurl = document.getElementById("filesurl");
    filesurl.innerHTML = file.name;
    }
    }filesurl是在主页面一个隐藏域,file.name是上传前客户端的文件名不是我想传的。
    1、我要的是上传后服务器端的完整路径。
    2、多个文件的路径怎么赋给隐藏域?
      

  3.   

    那你后台返回的时候可以返回一个json结构,js再取相对应的数据就行了啊。
      

  4.   

    json不会用。
    现在又有一点突破了,修改下面的函数,红色部分是我后加的代码
    function uploadSuccess(file, serverData) {
    try {
    var progress = new FileProgress(file, this.customSettings.progressTarget);
    progress.setComplete();
    progress.setStatus("Complete.");
    progress.toggleCancel(false);
    var filesurl = document.getElementById("filesurl");
    filesurl.innerHTML = serverData;
    } catch (ex) {
    this.debug(ex);
    }
    }现在问题转化为前台有个id=filesurl 的hidden标签,怎么把路径持续加进去。
    我这种写法是直接赋值,就是值传递了最后一个上传文件的路径!!!!
    离目标很近了!!!
      

  5.   

    你要的是批量上传?name名可以用<name="upload[]"
    <name="upload[]"
    <name="upload[]"这样你后台取print_r(upload)就是个数组
      

  6.   

    现在问题很明确了:
    <input id="filesurl"  value="" ...>没上传一个文件就执行一次函数 uploadSuccess(file, serverData),怎么在函数中去改变filesurl的value值。
    value="a.jpg"     一张图
    value="a.jpg|b.jpg"  两张图
    value="a.jpg|b.jpg|c.jpg"  三张图
    。。
      

  7.   

    function uploadSuccess(file, serverData) {
    try {
    var progress = new FileProgress(file, this.customSettings.progressTarget);
    progress.setComplete();
    progress.setStatus("Complete.");
    progress.toggleCancel(false);var filesurl = document.getElementById("filesurl");
    var filesurlval = document.getElementById("filesurl").value;
    document.getElementById("filesurl").value = filesurlval + '|' + serverData; } catch (ex) {
    this.debug(ex);
    }
    }
      

  8.   


    咱俩想到一块了,谢谢
    function uploadSuccess(file, serverData) {
    try {
    var progress = new FileProgress(file, this.customSettings.progressTarget);
    progress.setComplete();
    progress.setStatus("已完成.");
    progress.toggleCancel(false);
    /////
    var filesurl = document.getElementById("filesurl");
    if(filesurl.value==""){
    filesurl.value =serverData;
    }
    else{
    filesurl.value += "|"+serverData;
    } } catch (ex) {
    this.debug(ex);
    }
    }