Лучший способ ввести почтовый адрес / адрес недвижимости?

StackOverflow https://stackoverflow.com/questions/1318367

Вопрос

Я ищу мысли о двух разных способах ввода адреса собственности (т.е.домашний или служебный адрес, а не адрес электронной почты) на веб-сайте.Каковы плюсы и минусы отдельных полей по сравнению с единым гибким многострочным полем ввода?Или многострочный с отдельным вводом почтового индекса?

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

House:       [input field]
Street 1:    [input field]
Street 2:    [input field]
Town:        [input field]
District:    [input field]
Postal code: [input field]

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

Альтернативой является многострочный ввод в свободном формате (с дополнительной полосой прокрутки).:

Address:     |multi-line input field|
             |                      |
             |                      |
             |                      |
             |                      |
Postal code: [input field]

И как сохранить адрес?Если многострочный, хранить все строки в одном поле базы данных?Или разделить на отдельные поля и при редактировании объединить в многострочную строку?

Если разделять поля, какие поля вы используете и какова их ширина?

Это было полезно?

Решение

Я предпочитаю разделенные поля, потому что тогда тривиально очевидно, что такое разделение, и это также поможет людям, которые ранее вводили информацию в приложения типа form-saver.Быстрая машинистка знает, что нужно нажимать "tab", чтобы перемещаться между полями.

В обоих случаях вам нужно сохранить адрес в "разобранной" форме, потому что вам может понадобиться что-то с ним сделать.(Проверьте пригород и т.д.).

Другие советы

Я бы выбрал одно многострочное поле ввода.Адреса в разных странах отформатированы по-разному и содержат разные компоненты:например, во многих странах нет штата (выраженного как N / A).Почтовый индекс может состоять из 5 или 9 цифр, или может состоять из 2 групп по 3 буквенно-цифровых символа и т.д., так что учет этого может быть сложным.

Но каждый может ввести свой адрес в естественной форме, используя многострочное текстовое поле.

Я предпочитаю использовать отдельные поля, потому что это дает структурированную информацию, в то время как отдельные поля дают адрес, но с неизвестной структурой.Очевидным преимуществом является то, что одно поле позволяет вводить адреса, не соответствующие ожидаемому формату - например, иностранные адреса и почтовые ящики.

Размышляя над вашим вопросом, мне пришла в голову следующая идея - гибридное решение.Существует единственное поле ввода, но пока пользователь вводит вводимые данные, они анализируются и разделяются, и результат этого анализа отображается пользователю - тонкое выделение с названием поля рядом с ним, что-то похожее на всплывающую подсказку.У вас могут быть разные форматы для разных типов адресов и стран.Анализ может основываться на общей структуре адреса, но также и на названии штатов, стран или формате почтовых индексов.Регулярные выражения могли бы сделать это, но можно также рассмотреть пользовательский формат описания.Возможно, также можно было бы использовать XSD, XML или аналогичные языки описания (ab).

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

Я бы выбрал отдельные поля адреса.Это единственный способ провести какую-либо проверку.

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

(что в моей стране, например, для доставки товаров, довольно важно)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top