【问题标题】:HTML5 required, validation work, but message is not displayed需要 HTML5,验证工作,但不显示消息
【发布时间】:2016-06-24 01:46:33
【问题描述】:

我在我的“复选框”中实现了“必需”验证,它有效,“设置焦点”在字段上,但没有显示验证消息!

<form  asp-action="Create">
    <div class="form-horizontal">
        <h4>Etapa 4 - Termos de Uso</h4>
        <h5>Para concluir a sua inscrição basta validar que você não é um robo e concordar com os termos de uso!</h5>
        <hr />
        <div asp-validation-summary="ModelOnly" class="text-danger"></div>
    </div>
    <div class="form-group">
        <div class="g-recaptcha" data-sitekey="6LcgsyITAAAAAHiF8A1MGysKGUfQddq-_uzBD8ba"></div>
    </div>
    <div class="form-group">
        <div class="col-md-8  checkbox-inline">
            <input asp-for="Aceite" required  oninvalid="this.setCustomValidity('Para concluir a inscrição é necessário aceitar os termos de uso')"/>
            <a href="#" data-toggle="modal" data-target="#myModal">Li e concordo com os termos de uso e privacidade</a>
        </div>
    </div>
    <div class="form-group">
        <div class="col-md-8  checkbox-inline">
            <input asp-for="AceitePromocao" />
            <label asp-for="AceitePromocao"></label>
        </div>
    </div>
    <div class="form-group">
        <div class="col-md-pull-12">
            <input type="submit" value="Aceitar e concluir" class="btn btn-success btn-lg" />
        </div>
    </div>
</form>

【问题讨论】:

  • 您希望哪个属性出现验证错误?您所显示的只是bool 属性的复选框,除非恶意用户提交了null 值(truefalse 都对bool 有效),否则它们永远不会出现验证错误。
  • 想要验证它是否被选中,在我看来验证正在工作,为什么不选择何时并尝试发送未发送并且 setfocus 已指定到复选框!但没有显示消息
  • 因为如果没有检查它的值false,这是bool属性的有效值,因此不会显示错误。如果您想在未选中的情况下显示错误消息,那么您可以在提交并返回视图时添加ModelState 错误。或者您可以编写自己的 [MustBeTrue] 验证属性来实现 IClientValidatable 以获得客户端和服务器端验证
  • 我明白,这个验证的最佳实践是什么,javascript,“必须是真的”,有一个例子吗?

标签: asp.net-mvc html asp.net-core-mvc


【解决方案1】:

这是因为 复选框 所需的验证不合逻辑。 复选框 始终可以是true 或false。当你检查它时它是 true,否则它是 false。

这意味着它总是有价值

【讨论】:

    猜你喜欢
    • 2016-06-21
    • 2017-01-17
    • 2017-09-25
    • 1970-01-01
    • 2013-04-25
    • 2021-08-08
    • 1970-01-01
    • 2011-04-19
    相关资源
    最近更新 更多