【问题标题】:how to hide required pop-up of input in html如何在html中隐藏所需的输入弹出窗口
【发布时间】:2015-09-04 15:17:01
【问题描述】:

使用javascriptjsfiddle隐藏输入的required弹出窗口

尝试使用空输入提交并查看弹出窗口,因此我不需要显示该弹出窗口并且我希望验证所需的内容。

任何帮助我都不需要显示任何警告。

<form>
  <input type="text" name="name" required="required" value="" />
  <input type="submit" name="submit" value="Submit" />

【问题讨论】:

  • 所以要正确理解这一点,您想验证表单,但不希望收到通知?
  • 是的,我需要验证但不显示通知。
  • 查看我对拉法回答的评论。
  • 是的@Johan 我需要验证才能工作但不显示通知。

标签: javascript jquery html css


【解决方案1】:

由于这是一个 HTML5 事件,您可以阻止该事件触发弹出窗口并且仍然提供验证 (https://developer.mozilla.org/en-US/docs/Web/Events/invalid)。一个简单的事件监听器就可以完成这项工作。

要处理焦点,请像这样在该字段中包含一个 id ...

HTML

<input type="text" id="name" name="name" required="required" value="" />

并在返回函数中处理该焦点...

JS

document.addEventListener('invalid', (function () {
  return function (e) {
    e.preventDefault();
    document.getElementById("name").focus();
  };
})(), true);

编辑 看看这个 http://jsfiddle.net/rz6np/9/

【讨论】:

  • 我只需要占位符光标保持闪烁,输入区域不会弹出,但是这个删除仅弹出。
  • @kadibra 只是在e.preventDefault(); 之后添加逻辑,例如document.getElementById("focusMe").focus(); 其中focusMe 是您想要关注的元素的ID(在您的情况下是输入文本)
  • @kadibra 就像 Johan 所说的,只关注那个元素。查看我所做的编辑。
  • 请注意,每个需要验证的输入都会调用无效事件。
【解决方案2】:
autocomplete="off" 

autocomplete="nope"

如果自动完成功能在 &lt;input&gt; 上仍然有效,尽管 autocomplete="off",但您可以将 off 更改为随机字符串,例如 nope

Chrome 现在似乎会忽略 autocomplete="off",除非它位于 &lt;form&gt;-tag 上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 2022-12-31
    • 1970-01-01
    • 2010-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多