0

ASP.NET MVC 3 と Jquery を使用して画像を投稿しようとしています。ビューに次のコードがあります

form action="/profile/upload" method="post" enctype="multipart/form-data">

    <label for="photo">Photo:</label>
    <input name="photo" id="photo" type="file">

    <input value="Upload" type="submit">
</form>

そしてコントローラーで

public ActionResult Upload(HttpPostedFileBase photo)
{
    string path = @"D:\Temp\";

    if(photo != null)
        photo.SaveAs(path + photo.FileName);

    return RedirectToAction("Index");
}

私が欲しいのは、ファイルアップロードでjpgまたはpngファイルのみをアップロードしたいということです。JQueryで検証を行いたいです。

誰でも簡単な方法と、送信が開始される前に検証を確認する方法を提案できます..

<form action="/profile/upload" method="post" enctype="multipart/form-data">

    <label for="photo">Photo:</label>
    <input name="photo" id="photo" type="file">

    <input value="Upload" type="submit">
</form>
4

1 に答える 1

0

HTML 5 をサポートする最新の Web ブラウザーを使用している場合は、次のようにファイルの種類を制限できます。

<input name="photo" id="photo" type="file" accept="image/jpg, image/png" />

別の方法として、jquery.validate プラグインを使用して、フォームの送信時に選択したファイルのファイル拡張子をチェックし、それに応じて検証エラーを表示することもできます。2 つのケースがあります。

  1. ASP.NET MVC 3 に組み込まれている jquery の控え目な検証を使用していますthis post
  2. jquery.validate プラグインを直接使用して、自分でルールを作成しています。この場合、 を定義するのは簡単なことですcustom rule
于 2013-03-03T17:17:58.010 に答える