Как работает атрибут vcard_name в отношении полей ввода? - PullRequest
3 голосов
/ 09 января 2012

Может кто-нибудь объяснить, как работает атрибут (IE) vcard_name применительно к полям ввода HTML (см. Ниже)?

<input name="foo" vcard_name="bar">

Я прочитал документацию Microsoft, но мне все еще неясно. В приведенном выше примере означает, что включение атрибута vcard_name означает, что предложения автозаполнения будут извлечены исключительно из Ассистента профилей? Или предложения будут извлечены из Profile Assistant и из стандартного хранилища автозаполнения?

Кроме того, означает ли включение атрибута vcard_name, что введенные пользователем данные будут сохранены в Profile Assistant при отправке формы?

Ответы [ 2 ]

2 голосов
/ 10 января 2012

Надеюсь, это поможет вам. Спасибо

Как это работает (в основном)

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

Например, держу пари, что вы заполнили тонну бланков, которые спрашивают ваше имя. Позвольте мне продемонстрировать. Введите первые несколько букв вашего имени в текстовое поле чуть ниже. Если вы используете IE 5.0 или выше, могу поспорить, ваше имя появится в качестве выбора, который вы можете сделать. Попробуйте тоже в почтовом ящике. Держу пари, ты получишь свой адрес электронной почты в качестве выбора. Это не сработает для всех, но держу пари, я получу большинство из вас:

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

<FORM>
Name: <INPUT TYPE="text" NAME="name">
E-mail: <INPUT TYPE="text" NAME="email">
</FORM>

Это атрибут NAME, который делает трюк. По сути, я предполагаю, что когда-нибудь где-то вы заполняли форму, в которой спрашивали ваше имя и адрес электронной почты. Кроме того, я предполагаю, что в форме использовались атрибуты NAME «name» и «email». Они очень распространены.

Если это сработало, то в вашей системе есть пара vCards с именами "VCARD_NAME" и "VCARD_EMAIL". Когда вы заполнили другую форму и отправили ее, карта была создана. Теперь, с этого момента, всякий раз, когда вы сталкиваетесь с формой, в которой элемент с атрибутом NAME имеет значение «name» или «email», вам будет предложен текст с этой vCard.

Позвольте мне снова попытаться доказать это. Ниже приведена форма, которая выглядит точно так же, как и выше, за исключением того, что в первом текстовом поле атрибут NAME имеет значение «griswald», а второй - «ookook». Продолжайте, попробуйте ввести свое имя и адрес электронной почты. Вы не получите никакой помощи от автозаполнения.

Вы не получили никакой помощи, потому что на вашем компьютере нет VCARD_GRISWALD или VCARD_OOKOOK. К счастью, я не дал вам возможность отправить форму, иначе вы бы получили.

0 голосов
/ 01 февраля 2013

В основном атрибут * vcard_name * переопределяет атрибут name .Он указывает браузеру использовать значение vcard_name, переданное в качестве схемы, для поиска предложений автозаполнения.Если это не предусмотрено, используется атрибут name .

Указывает тип vCard, который будет использоваться для поля автозаполнения.Установка значения атрибута vCard_name заставляет содержимое окна автозаполнения зависеть только от значения этого атрибута, независимо от значения атрибута имени .Если значение атрибута vCard_name не указано, содержимое окна автозаполнения зависит от значения атрибута name.Источник: http://help.dottoro.com/lhwgvcmt.php

...