none
Como alterar a cor de fundo de um text box quando este receber o foco?

    Question

  • Salve!

    Aplicação web usando VB2005 .

    Como posso fazer para que um controle TextBox tenha a sua propriedade BackgroundColor alterada no momento em que o usuário clicar no controle ou quando este receber o foco programaticamente?

    Agradeço a atenção de todos.
    Paulo Ricardo Ferreira
    Tuesday, December 01, 2009 4:10 PM

Answers

  • Fale,

     

    <style type="text/css">

    input:focus

     

    {

     

    background: #ffc;

    }

     

    </

     

    style>



     Abraço!
    Se a resposta solucionar sua dúvida, favor - Votar como Útil Abraço!
    Tuesday, December 01, 2009 4:26 PM

All replies

  • Via código basta colocar:

    TextBox1.BackColor = System.Drawing.Color.Red;
    Tuesday, December 01, 2009 4:12 PM
  • Kaue?

    Ok. Mas em que evento do controle TextBox eu colocaria esse código?

    Agradeço pela sua atenção.
    Paulo Ricardo Ferreira
    Tuesday, December 01, 2009 4:14 PM
  • Faz via javascript fica melhor

    coloca essas tag no seu textbox

    onfocus ="ChangeColorFocus(this, event)"

    onblur ="ChangeColorFocus(this, event)"

    javascript

    function ChangeColorFocus(obj, evt) {
        if (evt.type == "focus")
            obj.style.borderColor = "#FF4D00";
        else if (evt.type == "blur")
            obj.style.borderColor = "#0a719c";
       
    }
    Tuesday, December 01, 2009 4:19 PM
    Moderator
  • Ou você faz via Javascript como o Seilor mostrou ou se for pelo código mesmo você pode fazer em qualquer lugar.

    Não precisa ser em um evento especificamente.
    Tuesday, December 01, 2009 4:21 PM
  • Fale,

     

    <style type="text/css">

    input:focus

     

    {

     

    background: #ffc;

    }

     

    </

     

    style>



     Abraço!
    Se a resposta solucionar sua dúvida, favor - Votar como Útil Abraço!
    Tuesday, December 01, 2009 4:26 PM
  • Seilor,

    Creio que quando você mencionou tag você referiu-se a Attribute e eu teria que fazer um TextBox1.Attributes.Add no evento page_Load, certo?

    E, nesse caso, como estou usando VB , posso usar o this ?

    Agradeço a sua atenção.
    Paulo Ricardo Ferreira
    Tuesday, December 01, 2009 4:26 PM
  • Erysson,

    Valeu mesmo! Uma solução bem simples que atendeu perfeitamente.

    Agradeço a sua atenção.
    Paulo Ricardo Ferreira
    Tuesday, December 01, 2009 4:34 PM
  • Não só no html
    <asp:TextBox ID="txtName" Text="" runat="server" MaxLength="70" TabIndex="2" CssClass="textBox150" onfocus ="ChangeColorFocus(this, event);" onblur ="ChangeColorFocus(this, event);"></asp:TextBox>
    Tuesday, December 01, 2009 4:37 PM
    Moderator