验证发生在成功提交之后



我想验证一个文本框字段。当我删除javascript末尾的return false时,验证控件工作得很好。但是删除return false并不能提交数据。我还观察到,当我使用return false时,数据会成功提交,但在提交数据后会检查验证。

function ConvertToImage(btnExport) {
html2canvas($("#myDIV")[0]).then(function(canvas) {
var base64 = canvas.toDataURL();
$("[id*=hfImageData]").val(base64);
__doPostBack(btnExport.name, "");
});
return false;
}
<asp:TextBox runat="server" ID="custom_Name" Height="50px" ValidationGroup="vg" Width="250px"></asp:TextBox><br />
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" Font-Size="X-Large" ControlToValidate="custom_Name" ErrorMessage="Please Enter Product Name" ValidationGroup="vg"></asp:RequiredFieldValidator>
<br />
<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ErrorMessage="Only Alphabets are Allowed" Font-Size="X-Large" ControlToValidate="custom_Name" ValidationExpression="[a-zA-Z ]*$" ValidationGroup="vg"></asp:RegularExpressionValidator>
<!--Button for save image start-->
<asp:HiddenField ID="hfImageData" runat="server" />
<asp:Button ID="btnExport" Text="Export to Image" runat="server" CausesValidation="true" OnClick="ExportToImage_Click" OnClientClick="return ConvertToImage(this)" CssClass="btnstyle" ValidationGroup="vg" Height="50px" Width="200px" />
<!--Button for save image ends-->

您需要在OnClientClick中添加javascript:

OnClientClick="return ConvertToImage(this)"将是

OnClientClick="javascript:return ConvertToImage(this)"

最新更新