首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当输入有焦点时隐藏标签

问当输入有焦点时隐藏标签
EN

Stack Overflow用户
提问于 2012-05-23 20:27:34
回答 3查看 3.8K关注 0票数 2

我有一个标签覆盖输入的表单。如下图所示

​

​

下面是相同的代码示例。

代码语言:javascript
复制
<label for="edit-submitted-name--2">
Name
<span class="form-required" title="This field is required.">*</span>
</label>
<input id="edit-submitted-name--2" class="form-text required" type="text" maxlength="128" size="35" value="" name="submitted[name]">

我希望每次用户关注输入时都使用jquery并隐藏标签。只有当输入为空或输入不在焦点时,标签才可见。

代码语言:javascript
复制
  $("input").focus(function () {
          //hide the label corresponding to this input
     });

如何使用jquery选择与此输入相对应的标签?

注释:I不能改变html中的任何东西,因为它是由Drupal中的一个模块生成的。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-23 20:32:18

从当前元素中选择前一个元素。

代码语言:javascript
复制
$(this).prev("label").hide();

和

代码语言:javascript
复制
$(this).prev("label").show();

然而,这并不是label元素的目的。

票数 3
EN

Stack Overflow用户

发布于 2012-05-23 20:30:45

占位符属性是此作业的正确工具:

代码语言:javascript
复制
<input id="edit-submitted-name--2" class="form-text required" type="text" maxlength="128" size="35" placeholder="Name *" name="submitted[name]">

http://www.w3schools.com/html5/att_input_placeholder.asp

但是,不要忘记,没有标签的输入字段是不好的做法。占位符应被视为提示。它们不是标签的替代品。

票数 5
EN

Stack Overflow用户

发布于 2012-05-23 20:31:25

雷米巴赫已经创建了超级标签,它可以做你想做的事情,我会使用他的代码,但是如果你在寻找一些稍微不同的东西,那么你可以用他的代码作为模板。

https://github.com/remybach/jQuery.superLabels

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10727326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档