【问题标题】:ASP.NET Datepicker validation fails to fire when enter a space string输入空格字符串时,ASP.NET Datepicker 验证无法触发
【发布时间】:2018-10-04 14:29:29
【问题描述】:

我遇到了奇怪的验证问题。如果我输入空格字符串,我的日期选择器不会触发验证。验证适用于其他无效输入。谁能帮我解决这个问题?

我正在使用的自定义 vilidator 称为“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">&nbsp;</abcv:RequiredPlaceHolderTextboxValidator>

<asp:CustomValidator runat="server" ID="cvDateTextBox" ControlToValidate="txtDate" ClientValidationFunction="date_validate"
    Display="Dynamic" CssClass="error" ErrorMessage="Date is not valid">&nbsp;</asp:CustomValidator>

<asp:CustomValidator ID="custValidation" ControlToValidate="txtDate" OnServerValidate="custValidation_ServerValidate"
    Display="Dynamic" CssClass="error" Enabled="false" runat="server">&nbsp;</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 asp.net validation datepicker


    【解决方案1】:

    CustomValidator 有一个ValidateEmptyText 属性。当设置为 true 时,Validator 将触发验证 emty 文本框。其中包括一个空格。

    <asp:CustomValidator runat="server" ValidateEmptyText="true" ID="cvDateTextBox" 
        ControlToValidate="txtDate" ClientValidationFunction="date_validate" Display="Dynamic"
        CssClass="error" ErrorMessage="Date is not valid">&nbsp;</asp:CustomValidator>
    

    【讨论】:

    • 谢谢! ValidateEmptyText 解决了我的问题! :)
    猜你喜欢
    • 1970-01-01
    • 2012-01-20
    • 1970-01-01
    • 2022-12-18
    • 1970-01-01
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 2012-05-23
    相关资源
    最近更新 更多