sur*_*ran 2 javascript asp.net onclientclick validation-controls
我在页面上有几个ASP文本框控件,添加了自定义验证器.我有保存按钮,它验证这些文本框.我刚刚添加了与文本框相同的验证组.
为了合并addtional要求,我为Save按钮添加了onClientClick函数.但很高兴发现由于验证组(验证器控件)而导致的验证未触发,而是调用onClientClick函数并调用服务器端Click事件.
Javascript代码
function ValidateInputs(source, args) {
var regex = /^(-{0,1}\d{1,100})$/;
if (args.Value.length < 1) {
$("span[id$='spn_error']").html('Please Enter ' + $(source).attr("errormessage"));
$("span[id$='spn_error']").show();
args.IsValid = false;
return;
}
else if (!regex.test(args.Value)) {
$("span[id$='spn_error']").html($(source).attr("errormessage") + ' allows only numbers');
$("span[id$='spn_error']").show();
args.IsValid = false;
return;
}
else {
if ($("span[id$='spn_error']").html().indexOf($(source).attr("errormessage")) >= 0)
$("span[id$='spn_error']").hide();
args.IsValid = true;
return;
}
}
function isValidTracker() {
//Dummy Code Say Confirm button
return(confirm('Are you sure');)
}
Run Code Online (Sandbox Code Playgroud)
HTML代码
<span class="errormesg" runat="server" id="spn_error" style="display: none;
font-size: 9px;"></span>
<asp:TextBox ID="txtLastMonthCount" runat="server" CssClass="inputbox" Width="75px" autocomplete="off" onkeypress="return isNumberKey(event);" ValidationGroup="g1"></asp:TextBox>
<asp:CustomValidator ID="CVLastMonthCount" runat="server" ErrorMessage="Last Months Closing Count" Text="<img src='../images/alert.gif' alt='Please Enter Last Months Closing Count' title='Please Enter Last Months Closing Count' />"
ValidationGroup="g1" ClientValidationFunction="ValidateInputs" OnServerValidate="ValidateInputs" ControlToValidate="txtLastMonthCount" ValidateEmptyText="true"></asp:CustomValidator>
<asp:Button ID="btnSave" runat="server" Text="Save" CssClass="button" ValidationGroup="g1" OnClientClick="return isValidTracker();" OnClick="btnSave_Click" />
Run Code Online (Sandbox Code Playgroud)
请帮我找到触发onclientclick的解决方案和Save按钮点击的验证控件.
归档时间: |
|
查看次数: |
7930 次 |
最近记录: |