ASP.net 验证控件干扰单独的控件
ASP.net Validation Control Interfering With Separate Controls
我在页面上有一个 FormView,它允许用户更新数据库中的条目。数据库是使用代码优先方法定义的,需要定义几个字段。表单视图如下所示,表单视图有效:
<asp:FormView ID="BikeAdd" runat="server"
ItemType="WLL.DAL.Bike"
InsertMethod="BikeAdd_InsertItem"
DefaultMode="Insert"
RenderOuterTable="false"
OnItemInserted="BikeAdd_ItemInserted"
ValidationGroup="BikeForm"
>
<InsertItemTemplate>
<fieldset>
<div>
<asp:DynamicEntity runat="server" Mode="Insert" />
</div>
<br />
<asp:Button ID="ButtonBikeAdd" runat="server" Text="Insert" CommandName="Insert" />
</fieldset>
</InsertItemTemplate>
</asp:FormView>
在同一页面上,我还有一个 FileUpload 控件。如下所示:
<asp:FileUpload ID="BikeImgUpload" runat="server" />
<asp:Button runat="server" ID="UploadBtn" Text="Upload Image" OnClick="UploadBtn_Click" />
问题是,当我尝试上传文件时,单击 'UploadBtn' 除了填充必填字段验证控件外,没有任何反应;必填字段旁边显示“*”。上传按钮背后的代码如下所示:
protected void UploadBtn_Click(object sender, EventArgs e)
{
if (BikeImgUpload.HasFile)
{
try
{
string location = Path.GetFileName(BikeImgUpload.FileName);
BikeImgUpload.SaveAs(Server.MapPath("~/Images/BikeImages") + location);
Status.Visible = true;
}
catch (Exception ex)
{
Status.Text = "Error:" + ex.Message;
Status.Visible = true;
}
}
}
如果有人对此问题有任何意见那就太好了。
将 CausesValidation="false" 属性添加到 UploadBtn 按钮。
所以新的按钮代码将是
<asp:Button CausesValidation="false" runat="server" ID="UploadBtn" Text="Upload Image" OnClick="UploadBtn_Click" />
我在页面上有一个 FormView,它允许用户更新数据库中的条目。数据库是使用代码优先方法定义的,需要定义几个字段。表单视图如下所示,表单视图有效:
<asp:FormView ID="BikeAdd" runat="server"
ItemType="WLL.DAL.Bike"
InsertMethod="BikeAdd_InsertItem"
DefaultMode="Insert"
RenderOuterTable="false"
OnItemInserted="BikeAdd_ItemInserted"
ValidationGroup="BikeForm"
>
<InsertItemTemplate>
<fieldset>
<div>
<asp:DynamicEntity runat="server" Mode="Insert" />
</div>
<br />
<asp:Button ID="ButtonBikeAdd" runat="server" Text="Insert" CommandName="Insert" />
</fieldset>
</InsertItemTemplate>
</asp:FormView>
在同一页面上,我还有一个 FileUpload 控件。如下所示:
<asp:FileUpload ID="BikeImgUpload" runat="server" />
<asp:Button runat="server" ID="UploadBtn" Text="Upload Image" OnClick="UploadBtn_Click" />
问题是,当我尝试上传文件时,单击 'UploadBtn' 除了填充必填字段验证控件外,没有任何反应;必填字段旁边显示“*”。上传按钮背后的代码如下所示:
protected void UploadBtn_Click(object sender, EventArgs e)
{
if (BikeImgUpload.HasFile)
{
try
{
string location = Path.GetFileName(BikeImgUpload.FileName);
BikeImgUpload.SaveAs(Server.MapPath("~/Images/BikeImages") + location);
Status.Visible = true;
}
catch (Exception ex)
{
Status.Text = "Error:" + ex.Message;
Status.Visible = true;
}
}
}
如果有人对此问题有任何意见那就太好了。
将 CausesValidation="false" 属性添加到 UploadBtn 按钮。
所以新的按钮代码将是
<asp:Button CausesValidation="false" runat="server" ID="UploadBtn" Text="Upload Image" OnClick="UploadBtn_Click" />