2009-10-22 10 views
6

私のMVCプロジェクトでアップロードしたファイルをアップロードしていて、その部分がとてもうまく動いています。何を追加する必要があるのか​​を知りたい次のように私のuploadifyスクリプトがあるasp.netのuploadifyからscriptDataにアクセスする方法MVCコントローラ

var fileCategoryID; 
$(document).ready(function() { 
$('#uploadify').uploadify({ 
    'uploader': '../../scripts/uploadify.swf', 
    'cancelImg': '../../content/images/cancel.png', 
    'script': '../../' + $('#Controller').val() + '/FileSave/' + $('#OrderID').val(), 
    'folder': 'Uploads', 
    'multi': true, 
    'auto': false, 
    'queueSizeLimit': 5, 
    'queueID': 'fileQueue', 
    'displayData': 'speed', 
    'fileExt': '*.pdf', 
    'fileDesc': 'PDF', 
    'sizeLimit': '5242880', 
    'scriptData': { 'categoryID': fileCategoryID } 
}); 
$('#fileCategory').change(function() { 
    fileCategoryID = $('#fileCategory').val(); 
}); 
}); 

どのように私、私は好奇心、私はuploadify JavaScriptからいくつかのより多くの明確化のため

EDITを渡していscriptData変数へのアクセスを得るために、私のコントローラのアクション私の中からこのデータにアクセスできますコントローラーの動作

答えて

4

私のコントローラーのアクションでformcollectionを受け入れることで、自分で解決する答えが見つかりました。私はuploadifyスクリプトからcategoryIDパラメーターにアクセスできます。

いくつかのコードの編集:

[AcceptVerbs(HttpVerbs.Post)] 
public string FileSave(long id, HttpPostedFileBase FileData, FormCollection forms) 
{ 
    long catID = Int64.Parse(forms.Get("CategoryID")); 

    //do something with files 

    return "Upload Successful"; 
} 
+0

また、formDataオプション - ' formData 'を使用することもできます。{' someKey ':' someValu e '、' someOtherKey ':1} – rboarman

0
<script type="text/javascript"> 
    $(function() { 
     $('#file_upload').uploadify({ 
      'swf': "@Url.Content("~/Content/UploadifyContent/uploadify.swf")", 
      'cancelImg': "@Url.Content("~/Content/UploadifyContent/uploadify-cancel.png")", 
      'uploader': "@Url.Action("Upload", "Callout", new { @id = 5 })", 
      'scriptData': { 'id': $('#Job_Id').val() }, 
      'onUploadSuccess': function (file, data, response) { 
       $("#uploaded").append("<img src='" + data + "' alt='Uploaded Image' />"); 
      } 
     }); 
    }); 
</script> 

公共のActionResultアップロード(長いID、HttpPostedFileBase FILEDATA) {

}

置き換える '5' $( '#/と.blah ')。val()またはequiv

+0

あなたの答えをありがとう。しかし、ネストされた引用文字にはいくつかの問題があると思います。回答を編集することを検討してください。 – Barett

関連する問題