我有这个标记代码:
<div id="rowIndirizzo" class="form">
<label>
Indirizzo:</label>
<asp:DropDownList ID="ddlToponimo" CssClass="indirizzo" runat="server" DataTextField="Toponimo"
DataValueField="Toponimo">
</asp:DropDownList>
<asp:TextBox ID="txtStrada" CssClass="textinputStrada" runat="server"></asp:TextBox>
<asp:TextBox ID="txtNumCivico" CssClass="textinputCivico" runat="server"></asp:TextBox>
</div>
<div id="divCap" class="form">
<label>
CAP:</label>
<asp:TextBox ID="txtCAP" CssClass="textinputCAP" runat="server"></asp:TextBox>
</div>
<asp:RequiredFieldValidator ID="rfvToponimo" CssClass="errore2" runat="server" ControlToValidate="ddlToponimo"
ErrorMessage="Il campo toponimo dell'indirizzo è obbligatorio." Display="Dynamic"
ValidationGroup="Step4_StruttPrivata1Step" Style="color: Red; display: block !important;"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="rfvStrada" CssClass="errore2" runat="server" ControlToValidate="txtStrada"
ErrorMessage="Il campo strada dell'indirizzo è obbligatorio." Display="Dynamic"
ValidationGroup="Step4_StruttPrivata1Step" Style="color: Red; display: block !important;"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="rfvNumCivico" CssClass="errore2" runat="server" ControlToValidate="txtNumCivico"
ErrorMessage="Il campo numero civico dell'indirizzo è obbligatorio." Display="Dynamic"
ValidationGroup="Step4_StruttPrivata1Step" Style="color: Red; display: block !important;"></asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="rfvCAP" CssClass="errore2" runat="server" ControlToValidate="txtCAP"
ErrorMessage="Il campo CAP è obbligatorio." Display="Dynamic"
ValidationGroup="Step4_StruttPrivata1Step" Style="color: Red;
display: block !important;"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="revCAP" runat="server" ControlToValidate="txtCAP"
ValidationExpression="^([0-9]{5})$" ErrorMessage="Il formato del CAP è errato (Es. 01234)"
Display="Dynamic" ValidationGroup="Step4_StruttPrivata1Step" Style="color: Red;
display: block !important;" />
<asp:Button ID="btnSearchIndirizzo" OnClientClick="return false;" class="buttonnext" runat="server" Text="Inserisci"
ValidationGroup="Step4_StruttPrivata1Step"></asp:Button>
我有一些控制来验证按钮单击,但我不想要回发(我不能使用输入按钮,因为不触发 rfv)。我尝试过 onclientclick 事件...但没有任何结果。
最佳答案
更新:我修改了 dummyFunction 代码以显式触发客户端验证并在页面无效时停止回发。
在按钮标记上尝试以下属性
UseSubmitBehavior = false
您可能也想尝试
OnClientClick = "return dummyFunction();"
然后有一个JS函数dummyFunction如
function dummyFunction(){
//this command will explicitly fire the validation
Page_ClientValidate();
return Page_IsValid; //Page_IsValid is set to true or false depending on whether a page is valid or not after client validation
}
关于asp.net - 必需字段验证器 + 按钮 = 回发!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5700932/