【问题标题】:Remove input error message after click on input单击输入后删除输入错误消息
【发布时间】:2017-03-09 18:40:45
【问题描述】:

我有一个表单,我在每个输入字段下方显示验证错误。

<div class="form-group m-0">
    <input type="text" class="form-control" name="address" placeholder="Address">
    <i class="form-group__bar error-red address"></i>
</div>

当Ajax 响应有关于输入字段的错误时,我会在此处显示它们&lt;i class="form-group__bar error-red address"&gt;&lt;/i&gt;。

如果显示错误并且用户单击输入字段时我想要消失错误消息,我想要什么。

这种东西有没有库,因为表单中有很多字段,我们可以为每个表单和字段使用库会很好。

【问题讨论】:

  • 你不是在使用 jQuery 吗?
  • 嗨,我正在使用 jquery。

标签: javascript jquery html css forms


【解决方案1】:

你可以使用 .focusin() 函数。你所要做的就是给每个&lt;i class="form-group__bar error-red address"&gt;&lt;/i&gt; 提供共同的课程。 就像如果每个 &lt;i class="form-group__bar error-red address"&gt;&lt;/i&gt; 的公共类是“form-group__bar”,那么您可以像这样使用 focusin。

$(".form-group input").focusin(function() {
  $(this).siblings(".form-group__bar").hide()
});

这将隐藏输入焦点的错误消息。 有关更多信息,您可以搜索 focusin 和 focusout 事件。

【讨论】:

  • 更好的伙伴,谢谢。顺便问一下,这些东西有图书馆吗?
  • 欢迎您@Gamer,有可用的插件,如 jquery.validate 和 bootstrapValidator。但是,如果您的需求很小,则无需使用插件。你可以为此写一些js和css。
【解决方案2】:

使用此代码不需要库,只需要您已经使用的 jquery

$("input").focus(function(){
   $(this).siblings("i.error-red").hide();
});

【讨论】:

  • 好的,我知道了,有没有我可以使用的库我不能对每个字段都使用上面的代码。
  • 只需将其添加到脚本末尾,它将自动选择所有输入字段,除非您在加载文档后生成输入字段。
  • 它将选择文档中的每个当前输入
  • 完美,谢谢伙计。
猜你喜欢
  • 1970-01-01
  • 2020-11-04
  • 1970-01-01
  • 1970-01-01
  • 2016-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多