2009-12-23 83 views
0
 <td class="style4"> 
      <input type="text" ID="txtFirstName" runat="server" maxlength="50" 
      class="DefaultTextbox" style="width:180px;" value="First Name" 
      onfocus="if(this.value=='First Name') {this.value = '';document.getElementById('spanFirstName').visible=false;}" 
      onblur="if(this.value=='') this.value = 'First Name'" 
      /> 
     </td> 
     <td> 
      <span id="spanFirstName">Should be less than 50 characters.</span> 
     </td> 

我想要做这样的事情此代码是否可用?使用Javascript/asp.net(代码不工作)

onfocus = "if(this.value=='First Name') 
{ 
    this.value = ''; 
    document.getElementById('spanFirstName').visible=false; 
}" 
onblur = "if(this.value=='') this.value = 'First Name'" 
+0

什么是你跟你报告的代码得到的结果? – kiamlaluno 2009-12-23 12:00:05

回答

1

我认为你正在寻找一个TextBoxWatermark。这里是一个很好的一个

Create Textbox Watermark Using CSS and JavaScript

为您的代码,你可以做这样的

<script type='text/javascript'> 
function HideSpan(elem) 
{ 
    if (elem.value == 'First Name') 
    { 
     elem.value = ''; 
     document.getElementById("spanFirstName").style.visibility = 'hidden'; 
    } 
} 

function SetText(elem) 
{ 
    if (elem.value == '') 
    { 
     elem.value = 'First Name'; 
      document.getElementById("spanFirstName").style.visibility = 'visible'; 
    } 
} 

</script> 
<table> 
<tr> 
     <td class="style4"> 
      <input type="text" ID="txtFirstName" runat="server" maxlength="50" 
      class="DefaultTextbox" style="width:180px;" value="First Name" 
      onfocus="HideSpan(this);" onblur="SetText(this);" 
      /> 
     </td> 
     <td> 
      <span id="spanFirstName">Should be less than 50 characters.</span> 
     </td> 
</tr> 
</table> 
1

我不知道asp.net,但在这行看你的代码之后:

document.getElementById('spanFirstName').visible=false; 

我认为它可以与以下行来代替:

document.getElementById('spanFirstName').style.visibility='hidden'; 

不知道,但是这是我们如何做到我吨,这可能是问题的原因。

感谢