Pregunta

Hai chicos,     Tengo tres cuadros de texto y un cuadro de lista ... Si el usuario hace clic en el primer cuadro de texto y luego hace clic en un elemento de la lista, el elemento seleccionado debe configurarse como valor en el cuadro de texto ... Quiero que esté en javascript ...

¿Fue útil?

Solución

Use el siguiente código para el cuadro de lista con el atributo SelectionMode establecido en Único.

var istBoxElement = document.getElementById ( "ListBox1" );
var textBoxElement = document.getElementById ( "txtBox1" );    

textBoxElement.value = elem.value;

y escriba esto dentro del evento onfocus del elemento del cuadro de texto.

Código de ejemplo

<script type="text/javascript">
    window.onload = function() { BindEvents(); }

    function BindEvents ()
    {
        var textBx = document.getElementById ( "txt1" );
        textBx.onfocus = function () {
            SetSel(this);
        }
    }

    function SetSel (elem)
    {
        alert ( elem.id );
        var elem = document.getElementById ( "ListBox1" );
        document.getElementById ( "txt1" ).value =  elem.value;
    }
</script>

<div id="divMain">
    <input type="text" id="txt1" />
    <asp:ListBox ID="ListBox1" runat="server" SelectionMode="Multiple">
        <asp:ListItem>1</asp:ListItem>
        <asp:ListItem>2</asp:ListItem>
        <asp:ListItem>3</asp:ListItem>
    </asp:ListBox>
</div>

Otros consejos

Creo que estás buscando enBlur. Puede mantener una variable con el último elemento visto y solo usar JavaScript para configurar el texto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top