Ваши комментарии

Адрес не найдет, потому что его нет в ФИАС. ФИАС – это классификатор адресов налоговой, который содержит в себе все адреса России. Дома, которых нет в ФИАС, мы пока не подсказываем.

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

Добрый день!


Дело в том, что Подсказки работают по ФИАС. В ФИАС нет некоторых реально существующих домов, в том числе домов 3А и 3Б.

Если не хотите, чтобы подставлялась единственная существующая подсказка, и пользователь мог не выбирать адрес – посмотрите пример, как это можно отключить.

Вот так:

enableSuggestions({
    address: $("#otkuda"),
    index: $('#index1'),
    region: $('#region'),
    city: $('#city'),
    street: $('#street'),
    house: $('#house'),
    flat: $('#flat')
});
enableSuggestions({
    address: $("#kuda"),
    index: $('#index2'),
    region: $('#region1'),
    city: $('#city1'),
    street: $('#street1'),
    house: $('#house1'),
    flat: $('#flat1')
});

В 2015 не успели, будет в январе.

Такая улица есть в городе Клин, во всяком случае так считает ФИАС (справочник адресов налоговой), по которому работают Подсказки.

По поводу трехзначных номеров дома – это корректное поведение.

Подсказки работают по ФИАС, и в нем нет некоторых реально существующих домов. Поэтому мы предлагаем существующие дома, но не ограничиваем пользователя ими.

Примерно так:

function join(arr) {
    var separator = arguments.length > 1 ? arguments[1] : ', ';
    return arr.filter(function(n) {
        return n;
    }).join(separator);
}

function enableSuggestions(ui) {
    ui.address.suggestions({
        serviceUrl: "https://dadata.ru/api/v2",
        token: "***",
        type: "ADDRESS",
        onSelect: showSelected
    });

    function showSelected(suggestion) {
        var address = suggestion.data;
        ui.index.val(address.postal_code);
        ui.region.val(join([
            join([address.region_type, address.region ], ' '), 
            join([address.area_type, address.area ], ' ')
        ]));
        ui.city.val(join([
            join([address.city_type, address.city ], ' '),
            join([address.settlement_type, address.settlement ], ' ')
        ]));
        ui.street.val(join([address.street_type, address.street ], ' '));
        ui.house.val(join([
            join([address.house_type, address.house ], ' '),
            join([address.block_type, address.block ], ' ')
        ]));
        ui.flat.val(join([address.flat_type, address.flat ], ' '));
    }
}

enableSuggestions({
    address: $("#otkuda"),
    index: $('#index1'),
    region: $('#region'),
    city: $('#city'),
    street: $('#street'),
    house: $('#house'),
    flat: $('#flat')
});

Сервис поддержки клиентов работает на платформе UserEcho