3

コントローラーにこのアクションがあります。

    public ActionResult Upload(HttpPostedFileBase fileData)
    {
        //code for uploading goes here.
        return View();
    }

$.post または $.Ajax を使用してこのアクションにアクセスする方法はありますか? 私の見解では、これらのコードがあります。

<input type="file" name="fileData" id="fileData" multiple/>
<button>Upload</button> 

まず、このコードを使用しようとしています

$("button").on("click",function(){
   $.post('@Url.Action' + $(".filedata").val(),function(data){
      console.log(data);
   });
});

しかし、「アップロード」アクションでポイントをブレークしようとすると、「filedata」変数にnull値が含まれます。

何が問題なのかわからない。あなたが私を助けてくれることを願っています。

4

1 に答える 1

0

ファイルを使用して投稿するために使用する IFRAME が必要です。

このような:

<iframe id="targetUpload" name="targetUpload"></iframe>

フォームでは、ターゲットを iframe に設定します。

<form target="targetUpload" name="file" runat="server" method="post" id="file" enctype="multipart/form-data" action="@Url.Content("~/Controller/Action")">

そして送信ボタン

<input type="Submit" value="Upload">
于 2013-10-23T18:03:57.553 に答える