ASPNET自定义有效词错误消息未显示



我使用Java脚本具有自定义验证器的ASPNET应用程序。我必须比较文本框中的2个日期(txtbegindate,txtendDate)。我将我的java脚本写为

Java Script:
function DateCompareClient(oSrc, args)
 {
    var begindt = new Date(document.getElementById('txtBeginDate').value);
    var endDt = new Date(document.getElementById('txtEndDate').value);
    if (begindt < endDt) {
        args.valid = true;
        return;
    }
    args.valid = false;
    return;
}

                                           <asp:CustomValidator
                                                    ID="Customvalidator3" runat="server"
                                                    ControlToValidate="txtEndDate" ErrorMessage="End Date must be later than Begin Date"
                                                    EnableClientScript="true" ClientValidationFunction="DateCompareClient" 
                                                    >*</asp:CustomValidator></td>

现在,脚本运行良好,但没有显示错误消息。如果条件是错误的,则应显示错误,这不会发生?

您可以在没有任何JavaScript的情况下完成您尝试做的事情,称为比较验证器

 <asp:CompareValidator id="compareStartAndEndDates" 
                ControlToValidate="txtEndDate" 
                ControlToCompare="txtBeginDate" 
                Operator="LessThan"
                Text="End Date must be after Begin Date" 
                Type="Date"
                runat="server"/>

我怀疑您的验证者从未真正射击。将alert()粘在您的JavaScript中进行测试。

在文本框上,您要确保将它们设置为AutoPostBack="true",以便用户远离该字段时,验证器启动。您可能还需要CausesValidation="true"

最新更新