多网站的需要填写的文本框在默认状态下都会给出一个默认的提示语言,当鼠标点击此文本框的时候能够将里面的默认文本清除,当删除输入的文本且焦点离开文本框的时候再将默认的文本写入文本框。
代码如下:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" content="http://www.maopiaopiao.com/" /> <title>点击文本框清除默认值</title> <script type="text/javascript"> window.onload=function() { var username=document.getElementById("username"); username.onclick=function() { if(username.value=="请输入您的姓名") { username.value=""; this.focus(); } } username.onblur=function() { if(username.value=="") { username.value="请输入您的姓名"; } } } </script> </head> <body> <input type="text" value="请输入您的姓名" id="username" /> </body> </html>
以上代码实现了我们的要求,当点击文本框的时候能够清除文本框中的内容,如果文本框没有输入任何内容,这个时候鼠标焦点离开文本框的时候,会将文本框的值恢复到默认状态。不过如果密码框肯恩有点麻烦,因为密码框并非显示的明文,解决方案可以参阅JavaScript实现输入框(密码框)出现提示语一章节。
鼠标离开文本框时触发js的方法
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="textBox.WebForm1" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script type="text/javascript"> function validate() { var name = document.getElementById("txtName"); if (name.value == 2) { alert("你必须不是二!"); name.focus(); return false; } return true; } </script> </head> <body> <form id="form1" runat="server"> <div> <asp:TextBox ID="txtName" onblur="validate();" runat="server" /> </div> </form> </body> </html>