【问题标题】:How to validate input format in devextreme textbox?如何验证 devextreme 文本框中的输入格式?
【发布时间】:2021-03-14 04:19:41
【问题描述】:

我有一个文本框,我想验证输入。 可接受的格式应该类似于 123.908-09,但它应该接受 52.232-1。此输入也可以为空。

文本框不接受 52.232-1

型号

 [RegularExpression(@"([0-9]+.[0-9]+-[0-9]+)", ErrorMessage = "X has an invalid format")]
 [DisplayName("X")]
 public string? x{ get; set; }

控制器

   [HttpPost]
    public ActionResult AddX(string values)
    {
        if (ModelState.IsValid)
        {
            _logger.LogInformation("valud values: " + values);
            return View();
        }
    }

查看

     groupItems.AddSimpleFor(m => m.x)
        .Editor(e =>
                e.TextBox()
                .Mask("###.###-####") 
                .MaskRules(new { X = new JS("/[02-9]/") })
                .MaskInvalidMessage("Please follow the standard x format")
                .UseMaskedValue(true)
                );

我的方向正确吗?我添加了掩码,因为当我只在模型中添加验证器时,用户可以在文本框中输入字母。

请帮忙。

【问题讨论】:

    标签: .net regex model-view-controller devexpress devextreme


    【解决方案1】:

    检查^(\d{1,3}\.\d{1,3}-\d{1,3})$ 是否有帮助, \d === [0-9]。这是way to check.

    【讨论】:

    • 谢谢你,我试过了,还是不行 :( [RegularExpression(@"(/d{1,3}/./d{1,3}-/d{1,3 })", ErrorMessage = "节的格式无效")]
    • 您使用了正斜杠。用反斜杠“\”替换它们
    • 您好,谢谢。但它仍然接受信件。 ://
    • 嘿,刚刚更新了我原来的答案。 ^(\d{1,3}\.\d{1,3}-\d{1,3})$ 应该修复它:)
    猜你喜欢
    • 2017-09-04
    • 1970-01-01
    • 1970-01-01
    • 2015-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多