【问题标题】:HTML - addition of oninput overriding custom oninvalid messageHTML - 添加 oninput 覆盖自定义 oninvalid 消息
【发布时间】:2014-02-17 18:41:51
【问题描述】:

我有一个表格,其中包含以下内容:

<td class="td_mid">
<input type=text class="form-control input_mid" name="offset" value="<?php if (isset($_POST['encode']) || isset($_POST['decode'])) { echo htmlspecialchars($_POST['offset']);} ?>" placeholder="Enter a number." pattern="[0-9]{0,3}" oninvalid="setCustomValidity('Please enter a number between 1 and 999.' oninput="setCustomValidity('')")"></td>

之前,我没有 oninput="setCustomValidity('')"。当我没有 oninput="setCustomValidity('')" 时,如果我输入了超出范围的值,它会按应有的方式显示我的错误消息。但是,如果我在输入中输入一个新数字,它不会识别该值已更改并认为它无效。

当我添加 oninput="setCustomValidity('')" 时,它不会显示我的自定义错误消息。是什么赋予了?有没有纯 HTML 解决方案?

【问题讨论】:

  • 你没有关闭你的 oninvalid 双引号。是错字吗?
  • 天啊!是的。现在可以了。您为什么不将此作为答案,以便我可以将其作为已接受的答案进行检查?

标签: html forms input placeholder


【解决方案1】:

从评论扩展:

您的代码中有错字。改变这个

<input oninvalid="setCustomValidity('Please enter a number between 1 and 999.'
     oninput="setCustomValidity('')")">

到这里

<input oninvalid="setCustomValidity('Please enter a number between 1 and 999.')"
     oninput="setCustomValidity('')">

应该解决问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-20
    • 1970-01-01
    • 2012-03-19
    • 2017-10-06
    • 2019-08-18
    • 2019-01-31
    • 1970-01-01
    相关资源
    最近更新 更多