Волшебное предложение для числового ввода

Я использую magicSuggest с серверной фильтрацией для некоторых полей ввода. В форме я хочу использовать ее с Google API Places, чтобы получить почтовый индекс для мест. Дело в том, что я хочу, чтобы пользователь вставлял только числовые значения в мои данные для поиска.

Из документации я предполагаю, что параметры конфигурации, которые должны быть связаны с тем, что я хочу сделать:

Vregex регулирует тип набора записей.

Для vtype требуется запись, соответствующая данному типу.

Я пробовал следующие настройки:

vtype: "int", vtype: "number"
vregex: /^\d+$/, vregex: "/^\d+$/"

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

Моя полная иллюстрация:

HTML

<input asp-for="ZipCode" id="zipCode" class="form-control" placeholder=""  />

Javascript

$('#zipCode').magicSuggest({
        allowFreeEntries: false,
        maxSelection: 1,
        minChars: 3,
        useTabKey: true,
        mode: 'remote',
        valueField: 'id',
        displayField: 'description',
        autoSelect: true,
        vregex: reg,
        renderer: function (region) {
            return '<div>' +
                '<div style="font-family: Arial; font-weight: bold">' + region.structured_formatting.main_text + '</div>' +
                '<div>' + region.description + '</div>' +
                '</div>';
        },
        data: params.searchRegionsUrl
    });

контроллер

    public async Task<JsonResult> GetRegions(string query)
    {
        List<GoogleApiPlace> places = new List<GoogleApiPlace>();
        try
        {
            places = await GoogleApisPlacesManagement.GetRegions(query);

        }
        catch (Exception ex)
        {
            // Log exception
        }
        return Json(places.OrderBy(o => o.description));
    }

0 ответов

Другие вопросы по тегам