Datalist no funciona en Ipad

Iniciado por yoelrodguez, Hoy a las 08:46:25 PM

Tema anterior - Siguiente tema

Mariore, yoelrodguez y 3 Visitantes están viendo este tema.

Tengo la siguiente situación: estoy usando un datalist en un formulario, pero en el caso específico de las iPad y iPhone, el datalist deja de funcionar siempre que el teclado está presente. El problema es que cuando me muestra el dato que quiero y lo selecciono para que se pase al input, no realiza la acción. A continuación, les dejo mi código para ver si me pueden ayudar.

Gracias

En el Html

Código: php
<input type="text" name="autorizacion" list="idauto" class="input-block-level" placeholder="Autorización" value="<?php echo input_post('autorizacion') ?>" required>

En el Javascript

   
Código: php
 var inputs = document.querySelectorAll('input[list]');

inputs.forEach(function(input) {
    input.addEventListener('input', function(e) {
        var optionFound = false;
        var datalist = this.list;
        
        for (var j = 0; j < datalist.options.length; j++) {
            if (this.value == datalist.options[j].value) {
                optionFound = true;
                break;
            }
        }
        
        if (optionFound) {
            this.setCustomValidity('');
        } else {
            this.setCustomValidity('Por favor, selecciona una opción válida.');
        }
    });
});

En el php

   
Código: php
 if (!function_exists('get_selectarrayinput')) {
    function get_selectarrayinput($array = array(), $id_list = '')
    {
        if ($array != '') {
            $datos = '<datalist id="' . $id_list . '">';
            foreach ($array as $key => $value) {
                $datos .= '<option value="' . $value . '">';
            }
            $datos .= '</datalist>';
        }
        return $datos;
    }
}