2014-02-19 2 views
1

Привет Это мой JS файл для pluploadПовторяя значение с помощью AJAX для plupload

var uploader = new plupload.Uploader({ 
runtimes : 'html5,flash,silverlight,html4', 
browse_button : 'pickfiles', // you can pass in id... 
container: document.getElementById('container'), // ... or DOM Element itself 
url : '../../assets/php/upload.php', 
flash_swf_url : '../js/Moxie.swf', 
silverlight_xap_url : '../js/Moxie.xap', 

filters : { 
    max_file_size : '10mb', 
    mime_types: [ 
     {title : "Image files", extensions : "jpg,gif,png"}, 
     {title : "Video files", extensions : "mp4"} 
    ] 
}, 

init: { 
    PostInit: function() { 
     document.getElementById('filelist').innerHTML = ''; 

     document.getElementById('uploadfiles').onclick = function() { 
      uploader.start(); 
      return false; 
     }; 
    }, 

    FilesAdded: function(up, files) { 
     plupload.each(files, function(file) { 
      document.getElementById('filelist').innerHTML += '<div id="' + file.id + '">' + file.name + ' (' + plupload.formatSize(file.size) + ') <b></b></div>'; 
     }); 
    }, 

    UploadProgress: function(up, file) { 
     document.getElementById(file.id).getElementsByTagName('b')[0].innerHTML = '<span>' + file.percent + "%</span>"; 
    }, 

    Error: function(up, err) { 
     document.getElementById('console').innerHTML += "\nError #" + err.code + ": " + err.message; 
    } 
} 
}); 

uploader.init(); 

В моей upload.php я возвращать

echo $name 

Я хотел бы мой plupload, чтобы отобразить имя $ на загрузка завершена.

Я попытался это решение How do I return data via Ajax using Plupload on Upload Complete?

uploader.bind('FileUploaded', function(upldr, file, object) { 
var myData; 
try { 
    myData = eval(object.response); 
} catch(err) { 
    myData = eval('(' + object.response + ')'); 
} 
alert(myData.result); 

Но когда я добавляю его в мой код он постоянно возвращается «Ваш просмотра не поддерживает HTML5, Flash, SilverLight, HTML4»

Если я беру метод Fileuploaded работает отлично.

ответ

2

Работал. Должно идти так.

UploadProgress: function(up, file) { 
     document.getElementById(file.id).getElementsByTagName('b')[0].innerHTML = '<span>' + file.percent + "%</span>"; 
    }, 
      FileUploaded: function(up, file, info) { 
      // Called when a file has finished uploading 
      document.getElementById('console').innerHTML += "#" + info.response + ": "; 
      var myData; 
       try { 
    myData = eval(info.response); 
} catch(err) { 
    myData = eval('(' + info.response + ')'); 
} 
$("#video_id").val(info.result); 
      }, 
    Error: function(up, err) { 
     document.getElementById('console').innerHTML += "\nError #" + err.code + ": " + err.message; 
    }