私の Web アプリは ASP.net MVC3 に基づいており、jqGrid を使用しています。jqGrid から必要なファイル アップロード機能をサポートすることにこだわっています。
Web アプリの使用フローにより、ユーザーはシステム上のファイルを選択し、jqGrid の追加/編集フォームからデータベース レコードにアップロードできます。ファイル アップロード用の jqGrid colModel には、編集タイプが として設定されていedittype:'file'
ます。追加/編集フォームで、「参照...」ボタンを表示して画像を選択できます。jqGrid のドキュメントでは、ファイルのアップロードに Ajax ファイル アップロード プラグインを使用することが提案されています。この名前のプラグインが 2 つ見つかり、両方を試しました。
PHPLetterの Ajax ファイル アップロード プラグイン: このプラグインは jqGrid で動作しますが、古いバージョンの jQuery を使用している場合のみです。jQuery 1.5 以降、ファイル アップロード プラグインでドキュメント化されていない HandleError API が使用されているため、この機能は壊れています。
Valumsの Ajax ファイル アップロード プラグイン。jqGrid の外部からこのプラグインを正常に使用できました。ファイルのアップロード (グリッド外) に使用するスクリプトは次のとおりです。
var uploader = new qq.FileUploader({ element: fileUploader, action: @Url.Action("UploadProductImage"), allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'], )};
ただし、このプラグインを jqgrid Add/Edit フォームに統合する方法はまだわかりません。アップロード スクリプトを初期化して呼び出すにはどうすればよいですか??
私のアプリは IE 7 および 8 で動作する必要があるため、Flash/HTML5 ベースのファイル アップロード ソリューション (Uploadify など) を使用できません。
ありがとう、
ロバート