Как проверить Выберите поле в амп-форме, чтобы не разрешить вариант запуска по умолчанию? - PullRequest
0 голосов
/ 17 октября 2019

У меня есть поле выбора, которое начинается с опции «Выбор местоположения» и я хочу заставить пользователя выбрать что-то перед отправкой. Я видел эту статью об отключении кнопки Submit с помощью amp-bind до тех пор, пока опция не станет доступна, но я хотел бы использовать проверку, встроенную в amp-форму, если это вообще возможно.

Iпопытался использовать атрибут pattern в полях <select> и <option>. Я использовал что-то похожее на pattern="^((?!default).)*$" и несколько вариантов без какого-либо успеха.

<form
    id="contactForm"
    method="post"
    action-xhr="https://valid.json/endpoint"
    custom-validation-reporting="show-all-on-submit"
    target="_top">

    [...]

    <select
        id="formLocation"
        name="location_id"
        pattern="^((?!default).)*$"
        required>
        <option value="default" disabled selected>Select Location</option>
        <option value="newyork">New York</option>
        <option value="losangeles">Los Angeles</option>
    </select>
    <span
        visible-when-invalid="patternMismatch"
        required
        validation-for="formLocation">
        Please Choose a Location
    </span>

    [...]

    <input
        id="formSubmit"
        type="submit"
        value="Submit">
</form>

Когда я нажимаю Отправить без изменения значения, я ожидаю появления ошибки проверки, но это не так. Можно ли использовать этот метод проверки с полями выбора? Или мне просто нужно использовать вышеупомянутый метод amp-bind?

...