单击鼠标时清除文本字段值

clear text field value when mouse click

本文关键字:字段 文本 清除 鼠标 单击      更新时间:2023-09-26

我有三个文本输入字段,就像jsfiddle上的这样。

我也把我的代码放在这里:

<table>
    <tr>
        <td><input type="text"  value="age" size=30>
        </td>
    </tr>
    <tr>
        <td> <input type="text"  value="Name" size=30>
        </td>
    </tr>
    <tr>
        <td><input type="text"  value="your email" size=30>
        </td>
    </tr>
</table>

.css:

input{color:#CCC;}

.js:

$('input').click(function() {
            $(this).attr('value', '');
            $(this).css('color','#000');
        }
    });

我希望鼠标单击每个字段将清除默认值,并且当用户输入值时,文本颜色为黑色而不是灰色。

我尝试的显示在jsfiddle链接上。但它不起作用,为什么?

在HTML5中,你可以使用placeholder

<input type="text" placeholder="age" size=30>

下面是示例:http://jsfiddle.net/24n7t/13/

但它仅适用于现代浏览器。

它在jsfiddle上不起作用,因为你没有选择加载jQuery(在左侧边栏上(。

此外,您还有一个不必要的括号 ( } (。删除它,它应该可以工作。

这是一个关于jsfiddle的工作示例。

jquery 代码中有错误,还有 1 个大括号

我使用以下代码删除它

$('input').click(function() {
            $(this).attr('value', '');
            $(this).css('color','#000');
        });

第二件事你包括jquery库??如果是,则确定,还包括document.ready语法

一些可能的改进...

$('input[type=text], input[type=password]')   //leave submit buttons, etc alone
  .bind( 'focus', function() {                //focus is more accessible than click
                                              //a user can't change a field without it
      $(this)
         .attr('value', '')                   //more chaining = less searching
         .css('color','#000');
     })
  .bind( 'blur', function() {                 //supposing you want to revert back on blur...
      $(this)
         .css('color','#ccc');
     });

语法错误:您有一个额外的}