У меня странная проблема с проверкой. Мой datepicker не будет запускать проверку, если я введу пробел. Проверка отлично работает с другими недопустимыми входными данными. Кто-нибудь может мне в этом помочь?
Пользовательский вилидатор, о котором я говорю, называется date_validate. Первая настраиваемая проверка в приведенном ниже коде
ctldatetextbox.ascx
<%@ Control Language = "vb" AutoEventWireup = "false" Inherits = "XXX.WebForms.UI.ctlDateTextbox" Codebehind = "ctlDateTextbox.ascx.vb" %>
<%@ Register TagPrefix = "abcv" Namespace = "XXX.WebForms.UI.CustomValidators" Assembly = "XXX.WebForms.UI" %>
<asp:TextBox ID = "txtDate" runat = "server" MaxLength = "11" Columns = "11" CssClass = "datepicker"></asp:TextBox>
<asp:Literal ID = "ltFormatScript" runat = "server" />
<abcv:RequiredPlaceHolderTextboxValidator ID = "reqDate" runat = "server" ControlToValidate = "txtDate" ErrorMessage = "Date is required"
CssClass = "error" Display = "Dynamic"> </abcv:RequiredPlaceHolderTextboxValidator>
<asp:CustomValidator runat = "server" ID = "cvDateTextBox" ControlToValidate = "txtDate" ClientValidationFunction = "date_validate"
Display = "Dynamic" CssClass = "error" ErrorMessage = "Date is not valid"> </asp:CustomValidator>
<asp:CustomValidator ID = "custValidation" ControlToValidate = "txtDate" OnServerValidate = "custValidation_ServerValidate"
Display = "Dynamic" CssClass = "error" Enabled = "false" runat = "server"> </asp:CustomValidator>
core.js
function date_validate(sender, args) {
if (RequiredPlaceHolderTextBoxEvaluateIsValid(sender)) {
var dtDate = Date.parse(args.Value);
args.IsValid = (dtDate !== null && dtDate !== 'NaN');
}
}
Спасибо!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


CustomValidator имеет свойство ValidateEmptyText. Если установлено значение true, Validator запустит проверку пустого текстового поля. И это включает в себя пробел.
<asp:CustomValidator runat = "server" ValidateEmptyText = "true" ID = "cvDateTextBox"
ControlToValidate = "txtDate" ClientValidationFunction = "date_validate" Display = "Dynamic"
CssClass = "error" ErrorMessage = "Date is not valid"> </asp:CustomValidator>
Спасибо! ValidateEmptyText решил мою проблему! :)