I am working on asp.net web form where I am using CustomValidator with server side validation event OnServerValidate to validate some stuff of page
and also using ajax AsyncFileUpload control to upload the file.
the both controls CustomValidator and AsyncFileUpload are independent on page there are no relation between both, but when I select any file in AsyncFileUpload the server side validation event of CustomValidator automatically firing which causing issue. the custom validator validation method should only fire when I click on their respective submit button which is working correctly but in addition CustomValidator OnServerValidate method also firing by AsyncFileUpload on file selection.
fallowing is the sample code I have created to demonstrate the issue.
ASPX Code
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<%-- <asp:UpdatePanel ID="upUpdateSplitedExposure" runat="server" UpdateMode="Conditional">
<ContentTemplate>--%>
<asp:CustomValidator ID="cvValidateSplitExposureSumByServer" Display="None"
runat="server" ErrorMessage="" OnServerValidate="cvValidateSplitExposureSumByServer_ValidateSplitExposureSum" ControlToValidate="txttmpValidateSum" ValidateEmptyText="true"
ValidationGroup="UpdateExposure"></asp:CustomValidator>
<asp:TextBox runat="server" ID="txttmpValidateSum" Style="display: none; width: 0px" ValidationGroup="UpdateExposure"></asp:TextBox>
<asp:Button ID="imgBtnUpdateSplitedExposure" runat="server" ToolTip="OK"
Text="OK" CausesValidation="true" ValidationGroup="UpdateExposure" Enabled="true" />
<%-- </ContentTemplate>
</asp:UpdatePanel>--%>
<%-- <asp:UpdatePanel ID="upUploadPayRoll" runat="server" UpdateMode="Always">
<ContentTemplate>--%>
<asp:AsyncFileUpload ID="asyncPayRollUploader" runat="server" CompleteBackColor="White"
Width="400px" EnableViewState="false" />
<asp:Button ID="ImageButton1" runat="server" ToolTip="OK"
Text="OK" CausesValidation="true" ValidationGroup="NEWG" Enabled="true" />
<%-- </ContentTemplate>
</asp:UpdatePanel>--%>
</div>
</form>
VB
Partial Class AsyncUpload
Inherits System.Web.UI.Page
Protected Sub cvValidateSplitExposureSumByServer_ValidateSplitExposureSum(source As Object, args As ServerValidateEventArgs)
Try
args.IsValid = False
Catch ex As Exception
args.IsValid = False
End Try
End Sub
Protected Sub asyncPayRollUploader_UploadedComplete(sender As Object, e As AjaxControlToolkit.AsyncFileUploadEventArgs) Handles asyncPayRollUploader.UploadedComplete
End Sub
Protected Sub ImageButton1_Click(sender As Object, e As EventArgs) Handles ImageButton1.Click
End Sub
Protected Sub imgBtnUpdateSplitedExposure_Click(sender As Object, e As EventArgs) Handles imgBtnUpdateSplitedExposure.Click
End Sub
End Class
Can any one help me please?