的RequiredFieldValidator导致验证服务器上即使禁用验证程序(的CausesValidation ="假") [英] RequiredFieldValidator causes validation on Server even if validator is disabled(CausesValidation="false")
问题描述
我设置的CausesValidation =false以我的取消按钮,但是当我点击取消按钮,异常(箭头)被显示为秒部分页面后loads.I试了很多办法通过添加组名称禁用验证和EnableClientScript属性= false来验证但这些不能帮我解决这个问题。即使我检查多个线程,但没有人给任何机构过这样的问题来了solution.If请帮助我。
<表ID =form1的=服务器>
< DIV CLASS =AdminContent>
< ASP:标签ID =Label1的=服务器的CssClass =BreadcrumbActiveBig文本=组成员/>
< ASP:的ScriptManager ID =ScriptManager1=服务器>
< / ASP:ScriptManager的>
< BR />
< BR />
< ASP:HiddenField ID =HiddenFieldProfile=服务器/>
< ASP:FormView控件DefaultMode =编辑ID =FormView1=服务器的DataSourceID =PermGroupObjectDataSource1
在preRender =FormView1_ preRender>
<&EditItemTemplate的GT;
<表>
&所述; TR>
< TD align =left合并单元格=3>
< ASP:按钮的ID =btnSave=服务器的OnClick =btnSave_Click文本=保存WIDTH =67px
的CssClass =ButtonS1/>
< ASP:按钮的ID =btnCancel=服务器的OnClick =btnCancel_Click文本=取消
的CssClass =ButtonS1的CausesValidation =FALSE/>
< / TD>
< / TR>
&所述; TR>
&所述; TD>
< ASP:标签ID =lblGrpName=服务器文本=组名:WIDTH =138px/>
< / TD>
&所述; TD>
< ASP:文本框ID =GroupNameTextBoxMAXLENGTH =50=服务器文本='<%#绑定(组名)%>'
WIDTH =337px只读=假/>
< ASP:的RequiredFieldValidator ID =rqrgFldVldtr_GroupName的ControlToValidate =GroupNameTextBox
显示=动态的ErrorMessage =&放大器; LT;元:获取ResourceKey =RequiredFieldValidator1Resource2
=服务器>< / ASP:&的RequiredFieldValidator GT;
< / TD>
< / TR>
&所述; TR>
&所述; TD>
< ASP:标签ID =lblGrpDescr=服务器文本=集团简介:WIDTH =138px/>
< / TD>
&所述; TD>
< ASP:文本框ID =GroupDescrTextBoxMAXLENGTH =255=服务器文本='<%#绑定(GroupDescr)%>'
WIDTH =337px只读=假/>
< / TD>
< / TR>
&所述; TR>
< ASP:面板ID =managedByPanel=服务器可见=假>
&所述; TD>
< ASP:标签ID =lblManagedByDescr=服务器文本=管理机构:WIDTH =138px/>
< / TD>
&所述; TD>
< ASP:DropDownList的ID =managedByDropDownList=服务器>
< ASP:ListItem的值=0文本=管理/>
< ASP:ListItem的值=1文本=AP职员管理和放大器;放大器;联系/>
< ASP:ListItem的值=2文本=POC管理和放大器;放大器;联系/>
< / ASP:DropDownList的>
< / TD>
< / ASP:面板>
< / TR>
&所述; TR>
< ASP:面板ID =lblFilterPanel=服务器可见=假>
&所述; TD>
< ASP:标签ID =LabelFilter=服务器文本=排除在文件过滤器WIDTH =150像素/>
< / TD>
&所述; TD>
< ASP:复选框ID =chbExcludefromDocFilter=服务器选中='<%#绑定(ExcludeFromUserFilter)%>' />
< / TD>
< / ASP:面板>
< / TR>
&所述; TR>
< TD VALIGN =顶>
< ASP:标签ID =lblMembers=服务器文本=成员:WIDTH =80px/>
< / TD>
&所述; TD>
< ASP:的UpdatePanel ID =UpdatePanel1=服务器>
<&的ContentTemplate GT;
< DIV>
< ASP:列表框ID =lbxMembers=服务器风格=溢出:汽车;宽度:500像素;
高度:150像素;的DataSourceID =MembersObjectDataSource1DataTextField ='LISTNAME
DataValueField =UNAME的SelectionMode =多/>
< BR />
< ASP:ObjectDataSource控件ID =MembersObjectDataSource1=服务器DataObjectTypeName =System.Collections.Generic.List`1 [Accenture.CSTPrague.eAPI.GroupMember,EAPI,版本= 1.0.0.0,文化=中性公钥= NULL]]
SelectMethod =FetchGroupMembers的TypeName =Accenture.CSTPrague.eAPI.WebDB_Perm
UpdateMethod =StoreGroupMembers>
< SelectParameters>
< ASP:SessionParameter名称=o的SessionField =oPermGroupTYPE =对象/>
< / SelectParameters>
< / ASP:ObjectDataSource控件>
< / DIV>
< ASP:按钮的ID =btnDeleteSelected=服务器的OnClick =btnDeleteSelected_Click
文本=删除选定的WIDTH =106px的CssClass =ButtonS1风格=保证金:4PX 0像素8像素2px的; />
< /&的ContentTemplate GT;
<&触发器GT;
< ASP:AsyncPostBackTrigger控件ID =btnDeleteSelected事件名称=点击/>
< /触发器>
< / ASP:的UpdatePanel>
< / TD>
< / TR>
&所述; TR>
&所述; TD>
< ASP:标签ID =lblUserName=服务器文本=用户名:WIDTH =141px/>
< / TD>
&所述; TD>
< ASP:的UpdatePanel ID =UpdatePanel2=服务器>
<&的ContentTemplate GT;
< ASP:面板ID =PANEL1=服务器DefaultButton =btnAdd>
<表>
&所述; TR>
< TD VALIGN =顶>
<埃森哲:lookupcontrol ID =UserLookup=服务器lookupcommand =USRMAXLENGTH =100
的ValidationGroup =ADDUSERdisablevalidation =真/>
< / TD>
&所述; TD>
< ASP:的CustomValidator ID =cuvUserName=服务器的ValidationGroup =ADDUSER显示=动态
的ErrorMessage =下; EnableClientScript =假OnServerValidate =cuvUserName_ServerValidate
的ControlToValidate =UserLookupValidateEmptyText =真/>
< / TD>
< TD VALIGN =顶>
< ASP:按钮的ID =btnAdd=服务器的OnClick =btnAdd_Click文本=添加用户的ValidationGroup =ADDUSER
的CausesValidation =真的CssClass =ButtonS1风格=保证金:2px的0像素8像素2px的; />
< / TD>
< / TR>
< /表>
< / ASP:面板>
< /&的ContentTemplate GT;
<&触发器GT;
< ASP:AsyncPostBackTrigger控件ID =btnAdd事件名称=点击/>
< /触发器>
< / ASP:的UpdatePanel>
< / TD>
< / TR>
< TR风格=垂直对齐:顶部>
< ASP:面板ID =queryConditionPanel=服务器可见=假>
&所述; TD>
< ASP:标签ID =lblQueryCondition=服务器文本=查询&安培; NBSP;条件:WIDTH =138px/>
< / TD>
&所述; TD>
<埃森哲:lengthlimitedmultilinetextbox ID =txtQueryCondition=服务器文本='<%#绑定(QueryCondition)%>'
风格=WIDTH:500px的文本模式=多行MAXLENGTH =1000HEIGHT =100像素的CssClass =txtbox/>
< / TD>
< / ASP:面板>
< / TR>
< /表>
< / EditItemTemplate中>
<&InsertTemplate则GT;
GID:
< ASP:文本框ID =GidTextBox=服务器文本='<%#绑定(Gid的)%>' />< BR />
组名:
< ASP:文本框ID =GroupNameTextBoxMAXLENGTH =50=服务器文本='<%#绑定(组名)%>' />< BR />
ID:
< ASP:文本框ID =IdTextBox=服务器文本='<%#绑定(ID)%>'>< / ASP:文本框>< BR />
GroupDescr:
< ASP:文本框ID =GroupDescrTextBoxMAXLENGTH =255=服务器文本='<%#绑定(GroupDescr)%>' />< BR />
ExcludeFromUserFilter:
< ASP:复选框ID =chbExcludefromDocFilter=服务器选中='<%#绑定(ExcludeFromUserFilter)%>' />< BR />
成员:
< ASP:文本框ID =MembersTextBox=服务器文本='<%#绑定(成员)%GT;' />< BR />
< ASP:LinkButton的ID =InsertButton=服务器的CausesValidation =真的CommandName =插入
文本=插入/>
< ASP:LinkButton的ID =InsertCancelButton=服务器的CausesValidation =FALSE的CommandName =取消
文本=取消/>
< / InsertTemplate则>
<&ItemTemplate中GT;
GID:
< ASP:标签ID =GidLabel=服务器文本='<%#绑定(Gid的)%>' />< BR />
组名:
< ASP:标签ID =GroupNameLabel=服务器文本='<%#绑定(组名)%>' />< BR />
ID:
< ASP:标签ID =IdLabel=服务器文本='<%#绑定(ID)%GT;' />< BR />
GroupDescr:
< ASP:标签ID =GroupDescrLabel=服务器文本='<%#绑定(GroupDescr)%>' />< BR />
<% - ExcludeFromUserFilter:LT; ASP:标签ID =lblExcludefromDocFilter=服务器文本='<%#绑定(ExcludeFromUserFilter)%>' />< BR /> - %GT;
成员:
< ASP:标签ID =MembersLabel=服务器文本='<%#绑定(成员)%GT;' />< BR />
< ASP:LinkButton的ID =EditButton=服务器的CausesValidation =FALSE的CommandName =编辑
文本=编辑/>
< / ItemTemplate中>
< / ASP:FormView控件>
< ASP:标签ID =lblMsg=服务器前景色=红/>
< ASP:ObjectDataSource控件ID =PermGroupObjectDataSource1=服务器DataObjectTypeName =Accenture.CSTPrague.eAPI.PermGroup
SelectMethod =FetchPermGroupFromDB的TypeName =Accenture.CSTPrague.eAPI.WebDB_Perm
UpdateMethod =StorePermGroupToDBOnUpdating =PermGroupObjectDataSource1_Updating>
< SelectParameters>
< ASP:SessionParameter名称=o的SessionField =oPermGroupTYPE =对象/>
< / SelectParameters>
< / ASP:ObjectDataSource控件>
< / DIV>
< /表及GT;
设置的ValidationGroup =XXX,并提交按钮。(不要取消按钮)
尝试
< ASP:的RequiredFieldValidator ID =rqrgFldVldtr_GroupName
的ControlToValidate =GroupNameTextBox**的ValidationGroup =XXX**显示=动态的ErrorMessage =&放大器; LT;
元:获取ResourceKey =RequiredFieldValidator1Resource2
=服务器>
< / ASP:&的RequiredFieldValidator GT;< ASP:按钮的ID =btnSave=服务器的OnClick =btnSave_Click**的ValidationGroup =XXX**文本=保存
WIDTH =67px的CssClass =ButtonS1/> < ASP:按钮的ID =btnCancel=服务器的OnClick =btnCancel_Click
文本=取消的CssClass =ButtonS1的CausesValidation =FALSE/>
I set CausesValidation="false" to my cancel button,But when I click the Cancel button ,the exception(arrow) is displaying for fraction of seconds after the page loads.I tried many ways to disable by adding group name to validator and EnableClientScript property=false to validator but these couldn't help me resolve the problem. Even I checked many threads but no one give the solution.If any body came across this problem please help me.
<form id="form1" runat="server">
<div class="AdminContent">
<asp:Label ID="Label1" runat="server" CssClass="BreadcrumbActiveBig" Text="Group Membership" />
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<br />
<br />
<asp:HiddenField ID="HiddenFieldProfile" runat="server" />
<asp:FormView DefaultMode="Edit" ID="FormView1" runat="server" DataSourceID="PermGroupObjectDataSource1"
OnPreRender="FormView1_PreRender">
<EditItemTemplate>
<table>
<tr>
<td align="left" colspan="3">
<asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" Text="Save" Width="67px"
CssClass="ButtonS1" />
<asp:Button ID="btnCancel" runat="server" OnClick="btnCancel_Click" Text="Cancel"
CssClass="ButtonS1" CausesValidation="false" />
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblGrpName" runat="server" Text="Group Name:" Width="138px" />
</td>
<td>
<asp:TextBox ID="GroupNameTextBox" MaxLength="50" runat="server" Text='<%# Bind("GroupName") %>'
Width="337px" ReadOnly="false" />
<asp:RequiredFieldValidator ID="rqrgFldVldtr_GroupName" ControlToValidate="GroupNameTextBox"
Display="Dynamic" ErrorMessage="<" meta:resourcekey="RequiredFieldValidator1Resource2"
runat="server"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblGrpDescr" runat="server" Text="Group Description:" Width="138px" />
</td>
<td>
<asp:TextBox ID="GroupDescrTextBox" MaxLength="255" runat="server" Text='<%# Bind("GroupDescr") %>'
Width="337px" ReadOnly="false" />
</td>
</tr>
<tr>
<asp:Panel ID="managedByPanel" runat="server" Visible="false">
<td>
<asp:Label ID="lblManagedByDescr" runat="server" Text="Managed by:" Width="138px" />
</td>
<td>
<asp:DropDownList ID="managedByDropDownList" runat="server">
<asp:ListItem Value="0" Text="Admin" />
<asp:ListItem Value="1" Text="AP Clerk admin & Admin" />
<asp:ListItem Value="2" Text="POC admin & Admin" />
</asp:DropDownList>
</td>
</asp:Panel>
</tr>
<tr>
<asp:Panel ID="lblFilterPanel" runat="server" Visible="false">
<td>
<asp:Label ID="LabelFilter" runat="server" Text="Exclude From Document Filter" Width="150px" />
</td>
<td>
<asp:CheckBox ID="chbExcludefromDocFilter" runat="server" Checked='<%# Bind("ExcludeFromUserFilter") %>' />
</td>
</asp:Panel>
</tr>
<tr>
<td valign="top">
<asp:Label ID="lblMembers" runat="server" Text="Members:" Width="80px" />
</td>
<td>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div>
<asp:ListBox ID="lbxMembers" runat="server" Style="overflow: auto; width: 500px;
height: 150px;" DataSourceID="MembersObjectDataSource1" DataTextField='ListName'
DataValueField="UName" SelectionMode="Multiple" />
<br />
<asp:ObjectDataSource ID="MembersObjectDataSource1" runat="server" DataObjectTypeName="System.Collections.Generic.List`1[[Accenture.CSTPrague.eAPI.GroupMember, eAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]"
SelectMethod="FetchGroupMembers" TypeName="Accenture.CSTPrague.eAPI.WebDB_Perm"
UpdateMethod="StoreGroupMembers">
<SelectParameters>
<asp:SessionParameter Name="o" SessionField="oPermGroup" Type="Object" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
<asp:Button ID="btnDeleteSelected" runat="server" OnClick="btnDeleteSelected_Click"
Text="Delete Selected" Width="106px" CssClass="ButtonS1" Style="margin: 4px 0px 8px 2px;" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnDeleteSelected" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</td>
</tr>
<tr>
<td>
<asp:Label ID="lblUserName" runat="server" Text="User name:" Width="141px" />
</td>
<td>
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:Panel ID="panel1" runat="server" DefaultButton="btnAdd">
<table>
<tr>
<td valign="top">
<accenture:lookupcontrol id="UserLookup" runat="server" lookupcommand="usr" maxlength="100"
validationgroup="addUser" disablevalidation="true" />
</td>
<td>
<asp:CustomValidator ID="cuvUserName" runat="server" ValidationGroup="addUser" Display="Dynamic"
ErrorMessage="<" EnableClientScript="false" OnServerValidate="cuvUserName_ServerValidate"
ControlToValidate="UserLookup" ValidateEmptyText="true" />
</td>
<td valign="top">
<asp:Button ID="btnAdd" runat="server" OnClick="btnAdd_Click" Text="Add User" ValidationGroup="addUser"
CausesValidation="true" CssClass="ButtonS1" Style="margin: 2px 0px 8px 2px;" />
</td>
</tr>
</table>
</asp:Panel>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAdd" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</td>
</tr>
<tr style="vertical-align: top">
<asp:Panel ID="queryConditionPanel" runat="server" Visible="false">
<td>
<asp:Label ID="lblQueryCondition" runat="server" Text="Query Condition:" Width="138px" />
</td>
<td>
<accenture:lengthlimitedmultilinetextbox id="txtQueryCondition" runat="server" text='<%# Bind("QueryCondition") %>'
style="width: 500px" textmode="MultiLine" maxlength="1000" height="100px" cssclass="txtbox" />
</td>
</asp:Panel>
</tr>
</table>
</EditItemTemplate>
<InsertItemTemplate>
Gid:
<asp:TextBox ID="GidTextBox" runat="server" Text='<%# Bind("Gid") %>' /><br />
GroupName:
<asp:TextBox ID="GroupNameTextBox" MaxLength="50" runat="server" Text='<%# Bind("GroupName") %>' /><br />
Id:
<asp:TextBox ID="IdTextBox" runat="server" Text='<%# Bind("Id") %>'></asp:TextBox><br />
GroupDescr:
<asp:TextBox ID="GroupDescrTextBox" MaxLength="255" runat="server" Text='<%# Bind("GroupDescr") %>' /><br />
ExcludeFromUserFilter:
<asp:CheckBox ID="chbExcludefromDocFilter" runat="server" Checked='<%# Bind("ExcludeFromUserFilter") %>' /><br />
Members:
<asp:TextBox ID="MembersTextBox" runat="server" Text='<%# Bind("Members") %>' /><br />
<asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert"
Text="Insert" />
<asp:LinkButton ID="InsertCancelButton" runat="server" CausesValidation="False" CommandName="Cancel"
Text="Cancel" />
</InsertItemTemplate>
<ItemTemplate>
Gid:
<asp:Label ID="GidLabel" runat="server" Text='<%# Bind("Gid") %>' /><br />
GroupName:
<asp:Label ID="GroupNameLabel" runat="server" Text='<%# Bind("GroupName") %>' /><br />
Id:
<asp:Label ID="IdLabel" runat="server" Text='<%# Bind("Id") %>' /><br />
GroupDescr:
<asp:Label ID="GroupDescrLabel" runat="server" Text='<%# Bind("GroupDescr") %>' /><br />
<%--ExcludeFromUserFilter: <asp:Label ID="lblExcludefromDocFilter" runat="server" Text='<%# Bind("ExcludeFromUserFilter") %>' /><br />--%>
Members:
<asp:Label ID="MembersLabel" runat="server" Text='<%# Bind("Members") %>' /><br />
<asp:LinkButton ID="EditButton" runat="server" CausesValidation="False" CommandName="Edit"
Text="Edit" />
</ItemTemplate>
</asp:FormView>
<asp:Label ID="lblMsg" runat="server" ForeColor="Red" />
<asp:ObjectDataSource ID="PermGroupObjectDataSource1" runat="server" DataObjectTypeName="Accenture.CSTPrague.eAPI.PermGroup"
SelectMethod="FetchPermGroupFromDB" TypeName="Accenture.CSTPrague.eAPI.WebDB_Perm"
UpdateMethod="StorePermGroupToDB" OnUpdating="PermGroupObjectDataSource1_Updating">
<SelectParameters>
<asp:SessionParameter Name="o" SessionField="oPermGroup" Type="Object" />
</SelectParameters>
</asp:ObjectDataSource>
</div>
</form>
Set ValidationGroup="xxx" in your validate control and submit button.(don't cancel button")
Try
<asp:RequiredFieldValidator ID="rqrgFldVldtr_GroupName"
ControlToValidate="GroupNameTextBox" **ValidationGroup="xxx"** Display="Dynamic" ErrorMessage="<"
meta:resourcekey="RequiredFieldValidator1Resource2"
runat="server">
</asp:RequiredFieldValidator>
<asp:Button ID="btnSave" runat="server" OnClick="btnSave_Click" **ValidationGroup="xxx"** Text="Save"
Width="67px" CssClass="ButtonS1"/>
<asp:Button ID="btnCancel" runat="server" OnClick="btnCancel_Click"
Text="Cancel" CssClass="ButtonS1" CausesValidation="false"/>
这篇关于的RequiredFieldValidator导致验证服务器上即使禁用验证程序(的CausesValidation =&QUOT;假&QUOT;)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!