Как пропустить проверку формы HTML5 в сафари?

0

Я хочу пропустить проверку на входе/форме URL-адреса в Safari. В частности, в Mobile Safari.

Из того, что я могу найти о атрибуте novalidate, он не поддерживается в Safari.

Зная это, как я могу пропустить проверку этого URL-адреса и/или всей формы? (Я мог бы переключить его на текстовый ввод, но я хочу, чтобы клавиатура url открывала вам iOS)

Теги:
mobile-safari
safari

1 ответ

0

Вы можете легко отключить URL-адрес, используя кусок javascript, как показано ниже:

<script type="text/javascript">

        function changeInputType()
        {
            if (isBrowserSafari())
            {
                var urlTextBox = document.getElementById("urlInput");
                urlTextBox.type = "text";
            }

        }

        function isBrowserSafari() {
            var ua = navigator.userAgent.toLowerCase();
            if (ua.indexOf('safari') != -1)
            {   
                return ua.indexOf('chrome') <= -1;
            }
            return false;
        }
    </script>

Не стесняйтесь подключать функцию к любой точке, которая имеет смысл для вашей программы. Например, onload.

<body onload="changeInputType()">
    <form action="#">
        Url: <input type="url" id="urlInput" />
        <input type="submit" value="Submit" />
    </form>

    <script type="text/javascript">

        function changeInputType()
        {
            if (isBrowserSafari())
            {
                var urlTextBox = document.getElementById("urlInput");
                urlTextBox.type = "text";
            }

        }

        function isBrowserSafari() {
            var ua = navigator.userAgent.toLowerCase();
            if (ua.indexOf('safari') != -1)
            {   
                return ua.indexOf('chrome') <= -1;
            }
            return false;
        }
    </script>
</body>
</html>

Надеюсь, это поможет.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню