2012-02-22 5 views
2

私の目標は、javascript/jqueryからjson/xmlに画像といくつかの余分なデータをアップロードすることです。私は現在PhoneGapフレームワークを使って開発しているので、これはちょっと面倒なようです。これを別々に行うことは問題ではないようですが、イメージとそれを記述しているデータとの関係を緩やかにしています。Javascaript/jqueryから画像とJSON/XMLをアップロード

誰でもこれを行う方法のアイデアはありますか?あるいは、「データをまとめて保存する」という他の良い方法はありますか?

あなたはjQueryのIFrameのプラグインをチェックアウトする必要があり、任意の提案のため OMA

答えて

2

あなたがPhonegapを使用している場合は、そのファイル転送APIを使用する必要があります。
このようにしてjsonオブジェクトを送信することもできます。

var options = new FileUploadOptions(); 
options.fileKey="document"; 
options.params={}; 
options.params.fileName = options.fileName ; 
options.chunkedMode = true; 
options.params.documentDio=dio;//THIS IS YOUR JSON OBJECT 
var ft = new FileTransfer(); 
ft.upload(fileURI, uploadUrl, function(data){ 
    //callback 
}, errorFn, options); 
+0

右、ありがとう!私は最初に印象を受けました。これはどこかのアンドロイドでしか働いていませんでした。しかし、問題は明らかにそれ以降のバージョンで修正されているので、iPhoneでも動作します:-) – OMA

2

ありがとう:

http://softwareas.com/jquery-iframe-plugin

AJAX通信が、私は知っている唯一の2つの方法でマルチパートデータを許可していません。独立フラッシュORを使用して、他のデータの

  • アップロードファイルにあります
  • 使用このプラグインは、したがって、このことができます

希望...

+1

HTML5 File APIを使用してAjaxでファイルをアップロードする方法があります。 – jcubic

+0

私はhtml5 apiの周りを突く時間がありませんでした。それを指摘してくれてありがとう! :) –

+0

提案をありがとう!私はHTML5とiFrameソリューションの両方を調べます:-) – OMA

1

またJquery Form Pluginをチェックアウトする価値がある可能性があり、これはフォーム送信キャッチ現在のページを残していない、IFrameのに全体のフォームを提出しますあなたはサーバーに送信する前に、データで何でもすることができます。これはファイルアップロードでも機能し、jperovicの提案と同様のiframeアプローチを使用します。過去にはうまくいきました。

+0

ニース!それが複数のファイルでも動作するかどうか知っていますか? – OMA

+0

私は試していないが、なぜそうでないのか分からない。実装が非常に簡単なので、時間がかかりません。 – chvck

関連する問題