我正在嘗試製作上傳圖片的表單。我已經放置了一個RegularExpressionValidator
來檢查選定文件的擴展名。 其ValidationExpression
是:ASP.net RegularExpressionValidator即使輸入無效也允許回發
(?i:^.+(.jpg|.ttf|.png|.gif)$)
但是,當我選擇例如.exe文件。該頁面進行回發,然後向我顯示錯誤。 .exe文件存儲在不應該的位置。
下面是控制我的HTML代碼:
<%@ Page Title="" Language="C#" MasterPageFile="~/filippo_admin_page/admin_master.Master" AutoEventWireup="true" CodeBehind="a_gallery.aspx.cs" Inherits="photography.filippo_admin_page.a_gallery" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<link rel="Stylesheet" type="text/css" href="css/a_gallery.css" />
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div id="whole_wrapper">
<fieldset>
<legend>Insert new image:</legend>
<div id="controls_wrapper">
<ul>
<li>
<asp:Label AssociatedControlID="title_txt" runat="server" ID="title_lbl">Title:</asp:Label>
<asp:TextBox ID="title_txt" runat="server" placeholder="Image title"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="title_txt" ErrorMessage="RequiredFieldValidator"
ForeColor="Red" ValidationGroup="gallery_validation">Required!</asp:RequiredFieldValidator>
</li>
<li>
<asp:Label AssociatedControlID="desc_txt" runat="server" ID="desc_lbl">Description:</asp:Label>
<asp:TextBox ID="desc_txt" runat="server" placeholder="Image description" TextMode="MultiLine"></asp:TextBox>
</li>
<li>
<asp:Label AssociatedControlID="cat_txt" runat="server" ID="cat_lbl">Category:</asp:Label>
<asp:TextBox ID="cat_txt" runat="server" placeholder="Image category"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="cat_txt" ErrorMessage="RequiredFieldValidator"
ForeColor="Red" ValidationGroup="gallery_validation">Required!</asp:RequiredFieldValidator>
</li>
<li>
<asp:Label ID="upload_lbl" runat="server">Select Image:</asp:Label>
<asp:FileUpload ID="upload_pnl" runat="server" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
ControlToValidate="upload_pnl" ErrorMessage="RequiredFieldValidator"
ForeColor="Red" ValidationGroup="gallery_validation">Required!</asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="upload_pnl" ErrorMessage="RegularExpressionValidator"
ForeColor="Red" ValidationExpression="(?i:^.+(.jpg|.ttf|.png|.gif)$)"
ValidationGroup="gallery_validation">File must be an image.</asp:RegularExpressionValidator>
</li>
<li>
<asp:Button ID="clear" runat="server" Text="Clear" UseSubmitBehavior="False" />
<asp:Button ID="submit" runat="server" Text="Upload" onclick="submit_Click"
ValidationGroup="gallery_validation"/>
</li>
</ul>
</div>
<asp:Label ID="msg_lbl" Visible="false" runat="server"></asp:Label>
</fieldset>
</div>
</asp:Content>
這裏的驗證程序的一部分:
<li>
<asp:Label ID="upload_lbl" runat="server">Select Image:</asp:Label>
<asp:FileUpload ID="upload_pnl" runat="server" />
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server"
ControlToValidate="upload_pnl" ErrorMessage="RequiredFieldValidator"
ForeColor="Red" ValidationGroup="gallery_validation">Required!</asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="upload_pnl" ErrorMessage="RegularExpressionValidator"
ForeColor="Red" ValidationExpression="(?i:^.+(.jpg|.ttf|.png|.gif)$)"
ValidationGroup="gallery_validation">File must be an image.</asp:RegularExpressionValidator>
</li>
我ValidationGroup
等於gallery_validation
和設置上,我想驗證所有的控制,包括自己的submit
按鈕。
如果您希望文件的整個HTML代碼只是問。
請發佈aspx標記 – platon
@platon ok。謝謝 –