2010-11-28 36 views
0

以下のコードは、AjaxUpload.2.0.min.jsを使用してサーバーにファイルをアップロードします。AjaxUpload:なぜ2回クリックする必要がありますか?

OSウィンドウの[ファイルの追加]ボタンで何度かクリックする必要があります(アップロードするファイルを選択する場所)をクリックするのではなく、表示することができます。

また、リンク内を一度クリックしてマウスを赤い領域から外して(#outload_filesから)クリックし、最後にリンクをクリックすると、OSウィンドウが開きます。なぜ私はこれをしなければならないのですか? AjaxUploadは最初は.livequery呼び出しでバインドされませんか?それでどうやって縛るの?

マウスの最初のクリックで表示するには、OSのウィンドウ上で、これに焦点を当ててください。残りのプログラミングは私のサーバーでうまくいきます。

の.jsをテストしやすいコードを作るためにgithubのにアップロードされているが、実際のケースでは、彼らは私のマシンです。

どうもありがとう

<head> 
<style> 
#upload_files{color: #fff; background:#F32201; border:1px solid #7E9DB9; padding:2px;} 
</style> 

<script type="text/javascript" src="https://gist.github.com/raw/6dd585079502f138d87e/7c243080233761859937d52195b670602731a379/jquery-1.4.2.min.js"></script> 

<script type="text/javascript" src="https://gist.github.com/raw/eeb2fe78f63ab80b626d/5be66e749b19fbb5b7c8814bf72a98c083f2aaaf/jquery.livequery.min.js"></script> 

<script type="text/javascript" src="https://gist.github.com/raw/826bff2445c8533dd7fc/797734455959ef27796b6770c95a7b39049ae6e9/AjaxUpload.2.0.min.js"></script> 

<script type="text/javascript"> 
     $(document).ready(function() { 

    function uploadFiles(){ 
     new AjaxUpload('#upload_files', { 
      action: 'whereToUploadInServer.php', 
     });  

    }//end uploadFiles 

      $("#upload_files").livequery("click", function(e){ 
     e.preventDefault(); 
     uploadFiles(); 
     //debugger ; 
    }); 
}); //end document ready 

    </script> 


    </head> 
    <body> 
     <div><a href="#" id="upload_files">Add File</a></div> <br> 

    </body> 

答えて

1

は、私の知る限り、ajaxuploadコンポーネントは、Githubの上のドキュメントによると、この時点で完全に動作しません。著者は代わりに新しいqq.FileUploaderプラグインを使用することを提案します。ここで

はすぐにdiv要素をクリックした後、ファイルダイアログが表示されます例です。

jsFiddle example

はそれがお役に立てば幸いです。

+0

私はポストを始めた人だし、内のログとのトラブルを抱えている:おかげ!!!!!!!!!!!!あなたは私のプロジェクトを救った! – user523129

+0

ああ!それは良いニュースです。私は8〜9ヶ月前に自分自身で同様の問題に遭遇しました。 1つの注記:最高の回答/解決策を提供する回答者の回答を受け入れることは、慣例である。 – JTP

関連する問題