Как удалить режим «strictMode» при выборе Таиланда?

Как можно отключить режим "strictMode" при выборе Таиланда в плагине <a href="https://intl-tel-input.com/examples/strict-mode.html" rel="nofollow">https://intl-tel-input.com/examples/strict-mode.html</a>? <br/> <br/> Пример кода: <pre><code class="html">var iti = window.intlTelInput(item, {
            initialCountry: "ru",
            separateDialCode: true,
            strictMode: true,
            utilsScript: "https://cdn.jsdelivr.net/npm/intl-tel-input@23.1.0/build/js/utils.js",
        });</code></pre>
  • 28 ноября 2024 г. 11:23
Ответы на вопрос 1
Для того чтобы отключить режим "strictMode" при выборе Таиланда в плагине `intl-tel-input`, вы можете добавить обработчик события, который будет переключать параметр `strictMode` на `false` при выборе страны "TH" (Таиланд).

Вот пример, как это можно реализовать:

```html
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/intl-tel-input/build/css/intlTelInput.css">
    <title>Intl Tel Input Example</title>
</head>
<body>
    <input id="phone" type="tel">

    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/intl-tel-input/build/js/intlTelInput.js"></script>
    <script>
        var iti = window.intlTelInput(document.querySelector("#phone"), {
            initialCountry: "ru",
            separateDialCode: true,
            strictMode: true,
            utilsScript: "https://cdn.jsdelivr.net/npm/intl-tel-input@23.1.0/build/js/utils.js",
        });

        // Обработчик изменения страны
        iti.getSelectedCountryData = function() {
            return iti.getSelectedCountryData();
        }

        $("#phone").on("change", function() {
            var selectedCountry = iti.getSelectedCountryData();
            if (selectedCountry.iso2 === 'th') { // Если выбран Таиланд
                iti.setOptions({ strictMode: false }); // Отключаем strictMode
            } else {
                iti.setOptions({ strictMode: true }); // Включаем strictMode для других стран
            }
        });
    </script>
</body>
</html>
```

### Пояснение к коду:
1. Мы инициализируем `intlTelInput` с параметром `strictMode: true`.
2. Добавляем обработчик события `change` для `#phone`, чтобы отслеживать изменения в выборе страны.
3. Получаем данные выбранной страны с помощью `iti.getSelectedCountryData()`.
4. Если выбранная страна - Таиланд (`iso2 === 'th'`), мы вызываем `setOptions` с параметром `strictMode: false`. Если выбрана другая страна, мы ставим `strictMode: true`.

Теперь при выборе Таиланда режим строгой проверки будет отключен, а для других стран будет включен.
Похожие вопросы