Textbox value onclick onblur issue


<asp:TextBox ID="TxtBOX" 
        runat="server"              
        CssClass="text"
        Height="32px" 
        Width="360px"  
        TextMode=MultiLine         
        TextWrapping="Wrap"
        AcceptsReturn="True"
        VerticalScrollBarVisibility="Visible"
        onclick="if(this.value='<%=_data.Obsprevia.ToString()%>'){this.value=''}"             
        onblur="if(this.value=''){this.value='<%=TxtObservaciones.Text.ToString()%>'}">
     </asp:TextBox>

那是我的代码。

默认的txtbox.text来自(_data_obsprevia)后面的代码。我要实现的是,一旦用户单击文本框,就可以清理该默认文本。如果TXBOX在用户没有写任何内容时失去焦点,请返回该默认文本。

我无法实现这一目标,如果用户确实写了一些东西,并且再次失去了焦点,则文本框再次变得空了。

谢谢。

编辑

修复了IFS内部的==,现在看起来像

<asp:TextBox ID="TxtBOX" 
        runat="server"              
        CssClass="text"
        Height="32px" 
        Width="360px"  
        TextMode=MultiLine         
        TextWrapping="Wrap"
        AcceptsReturn="True"
        VerticalScrollBarVisibility="Visible"
        onclick="if(this.value=='<%=_data.Obsprevia.ToString()%>'){this.value=''}"             
        onblur="if(this.value==''){this.value='<%=TxtObservaciones.Text.ToString()%>'}">
     </asp:TextBox>   

但是,当我第一次单击它时,它没有清洁DEAFULT数据。如果我删除它,然后失去焦点,则显示<%=TxtObservaciones.Text.ToString()%>不是其中持有的价值。

应该是:

if (this.value == '') {}

作为 ==比较值, = asigns一个值。

尝试一下,构建insertusernamehere的建议。

onclick="if(this.value=='<%=_data.Obsprevia.ToString()%>'){this.value=''}"             
onblur="if(this.value==''){this.value=document.getElementById('<%= TxtObservaciones.ClientID %>').value}"

这获取从JavaScript中的文本框中设置的内容,以防它在浏览器中更改。

您可能还需要将代码分解为函数

     function TxtBOX_OnClick() {
         var TxtBOX = document.getElementById("<%= TxtBOX.ClientID %>");
         if (TxtBOX.value == "<%=_data.Obsprevia.ToString()%>") {
             TxtBOX.value = '';
         }
     }
     function TxtBOX_OnBlur() {
         var TxtBOX = document.getElementById("<%= TxtBOX.ClientID %>");
         if (TxtBOX.value == '') {
             TxtBOX.value = document.getElementById("<%= TxtObservaciones.ClientID %>").value;
         }
     }

onclick="TxtBOX_OnClick();"             
onblur="TxtBOX_OnBlur();"             

类似的东西?

<input type="text" value="Search..." onclick="if(this.value=='Search...'){this.value=''}" onblur="if(this.value==''){this.value='Search...'}">

我不熟悉ASP,但希望这可以有所帮助:)

最新更新