我有一个带有调用客户端验证脚本的 CustomValidation 控件的 ASP.NET 文本框。
<asp:TextBox ID="txtSubsContrRbtAmt" runat="server"
CssClass="textEntry NumericInput" Width="150px"
Text="" onKeyUp="SumValues();" MaxLength="16"></asp:TextBox>
<asp:CustomValidator ID="cvalSubsContrRbtAmt" runat="server" ClientValidationFunction="ValidatetxtSubsContrRbtAmt"
ControlToValidate="txtSubsContrRbtAmt" CssClass="errlable" ErrorMessage="Max Decimals = 7"
SetFocusOnError="True" ValidationGroup="CarbsAdd"></asp:CustomValidator>
这是客户端脚本:
function ValidatetxtSubsContrRbtAmt(source, args) {
var txtSubsContrRbtAmt = document.getElementById("<%=txtSubsContrRbtAmt.ClientID%>");
var amount = txtSubsContrRbtAmt.value;
args.IsValid = ValidAmount(amount);
if (!args.IsValid)
txtSubsContrRbtAmt.focus();
}
function ValidAmount(amount) {
if (isNumber(amount)) {
return (RoundToXDecimalPlaces(amount, 7) == amount);
}
else {
return true;
}
在 ValidatetxtSubsContrRbtAmt 函数中,“source”参数是 CustomValidator。该控件具有属性“ControlToValidate”。如果可以的话,我可以以编程方式从该控件中检索值,而不必具有单独的函数来验证每个文本框。
jQuery 在这一点上对我来说太多了,我正在寻找一种简单的旧 Javascript 方法,拜托。