当输入框获得焦点时如何显示输入框的标题值。

3
如果我有
<input type="text"
       name="name"
       id="name" 
       placeholder="your name" 
       title="only words" 
       value=""/>

如果用户将光标放置/移动到文本字段上而不进行单击,那么title的消息将出现(这是预期的)。问题是,需要等待1或2秒才能看到该消息。

因此:当用户在文本字段中获得焦点时,我想显示该消息。激活事件。

我有以下内容:

$("form#idform input[type=text]").focus(function() {
    //what to do?
});

$("form#idform input[type=text]").blur(function() {
    //what to do?
});

对于每个事件,what to do? 中应该放置什么代码?

谢谢。


你需要编写自己的工具提示功能来实现这一点,或者使用现有的插件。但是为什么不直接将该信息放在“placeholder”属性中呢?这就是它的设计目的。 - Rory McCrossan
1
请查看 http://jsfiddle.net/usfrfdje/156/ - Pardeep Dhingra
“placeholder”和“title”非常相似,但它们并不相同。 - Manuel Jordan
3个回答

2
你可以使用qtip2。
包括:

http://cdn.jsdelivr.net/qtip2/2.2.1/jquery.qtip.js

http://cdn.jsdelivr.net/qtip2/2.2.1/jquery.qtip.css

文本字段:
<input type="text" title="My tooltip text1" />

工具提示初始化:
// Create the tooltips only when document ready
$(document).ready(function () {
    $('input[title]').qtip();    
});

小提琴

对于观众来说,以下是预期的要求,它是上面的补充:

$('input[title]').qtip({
    content: $(':focus').prop('title'),
    show: 'focus',
    hide: 'blur'
});

即使您的解决方案能够快速查看“标题”,当用户输入或将焦点放在字段上时,它也不会出现(标题消息)。 - Manuel Jordan

-1

标题 -> 当鼠标悬停时将显示工具提示。您可以在 JavaScript 中访问此属性:

$('input').focus(function(){
    var title = $(this).attr('title');
    console.log(title);
  });

但是针对你的问题,是的,你必须编写自己的工具提示。


目标是将“message”显示在同一字段中,而不是通过“控制台”。 - Manuel Jordan
在我的代码中,我只展示了如何获取标题属性。我仅仅使用控制台作为示例。 - Ihor Vahanov
最终用户直接看到的是“表单”,而不是“Web控制台”。 - Manuel Jordan

-1

$('input').focus(function(){
    var title = $(this).attr('title');
    console.log(title);
  });

代码无法运行


1
你的答案可以通过提供更多支持信息来改进。请进行[编辑]以添加进一步的细节,例如引用或文档,以便他人可以确认您的答案是否正确。您可以在帮助中心找到有关如何编写良好答案的更多信息。 - Community
仅仅用几行代码回答问题,然后跟上“代码无效”的话并不是有帮助的,反而会让人感到困惑。 - Alexander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接