[Pregunta]: ¿Alguna manera de poder hacer esto en mi formulario con un dato d..?

Iniciado por Leguim, 3 Diciembre 2019, 02:53 AM

0 Miembros y 1 Visitante están viendo este tema.

Leguim

Buenas noches,

tengo un <select> en el cual solamente tengo un option <option value="0">Día</option>
Los días los creo de forma dinámica usando JS obviamente hay meses (febrero) 28 días si no es bisiesto y otros que tienen 31 días...
pero para el ejemplo que quiero dar viene bien.

Correcto, entonces tengo al fin de cuentas un selector con 32 opciones (uno con el option 0 y los demás del 1 a el 31)

Generalmente lo que hago siempre para recuperar un dato luego de enviar un formulario es hacer:

Código (php) [Seleccionar]

<?php
if(isset($_POST['selector']))
{
       
?>

       <select name="selector">
               <option value="0">Día</option>
                // acá se crean 31 options más con javascript ¿Pero como puedo seleccionarlos si a simple vista no aparecen? algo como esto..
                <option value="30" selected="true">30</option>
       </select>
       <?php
}
?>



Código (javascript) [Seleccionar]

    function Create_Select_Day()
    {
        var select = document.getElementById('select_day_birth');

        for(var i = 1; i <= 31; i++)
        {
            option = document.createElement('option');
            option.value = i;
            option.text = i;
            select.appendChild(option);
        }
    }


¿Será que lo podré hacer usando algun script que se ejecute?

AlbertoBSD

tienes que espeficicarles algun ID a cada Option lo mismo que estas haciendo pero:

Código (javascript) [Seleccionar]

    function Create_Select_Day()
    {
        var select = document.getElementById('select_day_birth');

        for(var i = 1; i <= 31; i++)
        {
            option = document.createElement('option');
option.id = "opt_"+i;
            option.value = i;
            option.text = i;
            select.appendChild(option);
        }
    }


Y posteriormente marcarlo como seleccionado segun tu criterio
Código (javascript) [Seleccionar]

document.getElementById("opt_30").selected = true;
Donaciones
1Coffee1jV4gB5gaXfHgSHDz9xx9QSECVW

Leguim

Lo hice así:

Código (php) [Seleccionar]

    <?php
    
if(isset($_POST['select_day_birth']))
    {
        
?>

        <script type="text/javascript">
        $(document).ready(function()
        {
            var select_day = document.getElementById('select_day_birth');
            var op_day = select_day.getElementsByTagName('option');

            op_day[<?php echo($_POST['select_day_birth']); ?>].selected = true;
        });
        </script>
        <?php
    
}
    
?>



y funciona de 10, gracias!