Input 清除焦点上的输入字段

Input 清除焦点上的输入字段,input,text,onblur,onfocus,Input,Text,Onblur,Onfocus,我在创建两个函数以清除焦点上的输入字段并将其重置为默认文本onblur(如果为空)时遇到问题。它可以正常工作,直到您更改一些文本,然后将其退格 我的职能是: function enterField (id, defaultText) { if (document.getElementById(id).value == defaultText) { document.getElementById(id).setAttribute("value", ""); docum

我在创建两个函数以清除焦点上的输入字段并将其重置为默认文本onblur(如果为空)时遇到问题。它可以正常工作,直到您更改一些文本,然后将其退格

我的职能是:

function enterField (id, defaultText) {
   if (document.getElementById(id).value == defaultText) {
      document.getElementById(id).setAttribute("value", "");
      document.getElementById(id).style.color = "#000000";
   }
}

function leaveField (id, defaultText) {
   if (document.getElementById(id).value == "" || document.getElementById(id).value == defaultText) {
      document.getElementById(id).setAttribute("value", defaultText);
      document.getElementById(id).style.color = "#dddddd";
  }
}
我的html是:

<table style="width: 464px; margin-right: -7px; margin-left: -7px; table-layout: fixed;" cellpadding="0" cellspacing="8">
    <tr>
        <td class="input"><input id="name" type="text" class="name" size="32" value="Name" onfocus="enterField('name', 'Name');" onblur="leaveField('name', 'Name');"></td>
        <td class="input"><input id="email" type="text" class="name" size="32" value="Email" onfocus="enterField('email', 'Email');" onblur="leaveField('email', 'Email');"></td>
    </tr>
    <tr>
        <td class="input" colspan="2"><textarea id="message" class="message" rows="8" onfocus="enterField('message', 'Message');" onblur="leaveField('message', 'Message');">Message</textarea></td>
    </tr>
    <tr>
        <td style="text-align: right;" colspan="2"><input id="submit" type="submit" class="button" value="Send"></td>
    </tr>
</table>

消息
你可以看到它是如何运行的。单击底部的“让我们谈谈”。更改

document.getElementById(id).setAttribute("value", defaultText);

在您的函数中出现两次。

不客气:)我是SO的新手,当我看到我回答了一些问题时,我感到很高兴!
document.getElementById(id).value = defaultText;