Is this an autofill bug on Chrome 81?
On my main computer, running Ubuntu 18.04 and Chrome 78, this form works as I would expect - each form can be filled independently.
form {
border: solid 1px black;
padding: 1em;
display: inline-block;
}
form input {
display: block;
}
<form>
<label> name<input type = "text" name ="name" /> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email<input type = "text" name ="email" /> </label>
<button type="submit"> submit</button>
</form>
<form>
<label> name <input type = "text" name ="name"/> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email <input type = "text" name ="email"/> </label>
<button type="submit"> submit</button>
</form>
CodePen
However - on Chrome 81 on a Windows machine - choosing the autofill on the second form will cause the first form to also be filled.
Is this a bug, or correct autofill behaviour?
If so, is there a bug tracker where this is documented?
google-chrome auto-form-fill
add a comment |
On my main computer, running Ubuntu 18.04 and Chrome 78, this form works as I would expect - each form can be filled independently.
form {
border: solid 1px black;
padding: 1em;
display: inline-block;
}
form input {
display: block;
}
<form>
<label> name<input type = "text" name ="name" /> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email<input type = "text" name ="email" /> </label>
<button type="submit"> submit</button>
</form>
<form>
<label> name <input type = "text" name ="name"/> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email <input type = "text" name ="email"/> </label>
<button type="submit"> submit</button>
</form>
CodePen
However - on Chrome 81 on a Windows machine - choosing the autofill on the second form will cause the first form to also be filled.
Is this a bug, or correct autofill behaviour?
If so, is there a bug tracker where this is documented?
google-chrome auto-form-fill
You are giving the fields the samename
in both forms. To distinguish between them, give the fields different names in each form.
– harrymc
Jan 25 at 7:57
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37
add a comment |
On my main computer, running Ubuntu 18.04 and Chrome 78, this form works as I would expect - each form can be filled independently.
form {
border: solid 1px black;
padding: 1em;
display: inline-block;
}
form input {
display: block;
}
<form>
<label> name<input type = "text" name ="name" /> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email<input type = "text" name ="email" /> </label>
<button type="submit"> submit</button>
</form>
<form>
<label> name <input type = "text" name ="name"/> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email <input type = "text" name ="email"/> </label>
<button type="submit"> submit</button>
</form>
CodePen
However - on Chrome 81 on a Windows machine - choosing the autofill on the second form will cause the first form to also be filled.
Is this a bug, or correct autofill behaviour?
If so, is there a bug tracker where this is documented?
google-chrome auto-form-fill
On my main computer, running Ubuntu 18.04 and Chrome 78, this form works as I would expect - each form can be filled independently.
form {
border: solid 1px black;
padding: 1em;
display: inline-block;
}
form input {
display: block;
}
<form>
<label> name<input type = "text" name ="name" /> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email<input type = "text" name ="email" /> </label>
<button type="submit"> submit</button>
</form>
<form>
<label> name <input type = "text" name ="name"/> </label>
<label> phone<input type = "text" name ="phone" /> </label>
<label> email <input type = "text" name ="email"/> </label>
<button type="submit"> submit</button>
</form>
CodePen
However - on Chrome 81 on a Windows machine - choosing the autofill on the second form will cause the first form to also be filled.
Is this a bug, or correct autofill behaviour?
If so, is there a bug tracker where this is documented?
google-chrome auto-form-fill
google-chrome auto-form-fill
asked Jan 22 at 1:40
user1068446user1068446
348112143
348112143
You are giving the fields the samename
in both forms. To distinguish between them, give the fields different names in each form.
– harrymc
Jan 25 at 7:57
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37
add a comment |
You are giving the fields the samename
in both forms. To distinguish between them, give the fields different names in each form.
– harrymc
Jan 25 at 7:57
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37
You are giving the fields the same
name
in both forms. To distinguish between them, give the fields different names in each form.– harrymc
Jan 25 at 7:57
You are giving the fields the same
name
in both forms. To distinguish between them, give the fields different names in each form.– harrymc
Jan 25 at 7:57
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37
add a comment |
1 Answer
1
active
oldest
votes
The named fields in an HTML form are stored with their values by the browser
in the
user's profile, so can be reused in other forms via the mechanism of auto-fill.
A field with the same name is then used globally in this website and all other
websites that have fields with the same name.
In the Chromium article of
Form Autofill
this can be seen from the structure of the SQLite Database table that stores
these values as pairs, where the table-columns are:
pair_id, name, value, count.
It can be seen here that the originating website and the original page URL
do not appear here and have no importance.
You have used standard names for the form fields, which can be found in various
standards: name, phone, email. Some browsers even allow one to enter values
for them in the profile definition, which the browser then auto-fills automatically
for all forms using these standard field-names.
The browser stores all field values, not only those that have well-known names.
You have used the same names twice, that the browser will store in your profile,
to be reused again. When auto-filling, it will use only one of the values you
entered for fields with the same name, based on its internal algorithms,
for example the last-entered or the most-used.
In effect, you have declared that the values in both forms of the fields are
to made identical, which the browser did as requested by auto-filling then with
the same values.
There are other well-known variants of the field-names you used.
For example, besides name that you used, there exist
fname, mname and lname, for first, middle and last names.
In HTML5 the
form standard
has been extended, with the addition of the autocomplete
tag-attribute
that allows to distinguish, for example, between the work and home phone numbers.
For example:
<p><label>Customer name: <input name="custname" required autocomplete="shipping name"></label></p>
<p><label>Telephone: <input type=tel name="custtel" autocomplete="shipping tel"></label></p>
<p><label>E-mail address: <input type=email name="custemail" autocomplete="shipping email"></label></p>
Useful references:
- The Chromium Projects - Form Autofill
- How to trigger Autofill in Google Chrome?
HTML Living Standard - Forms
from 24 January 2019
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1396836%2fis-this-an-autofill-bug-on-chrome-81%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The named fields in an HTML form are stored with their values by the browser
in the
user's profile, so can be reused in other forms via the mechanism of auto-fill.
A field with the same name is then used globally in this website and all other
websites that have fields with the same name.
In the Chromium article of
Form Autofill
this can be seen from the structure of the SQLite Database table that stores
these values as pairs, where the table-columns are:
pair_id, name, value, count.
It can be seen here that the originating website and the original page URL
do not appear here and have no importance.
You have used standard names for the form fields, which can be found in various
standards: name, phone, email. Some browsers even allow one to enter values
for them in the profile definition, which the browser then auto-fills automatically
for all forms using these standard field-names.
The browser stores all field values, not only those that have well-known names.
You have used the same names twice, that the browser will store in your profile,
to be reused again. When auto-filling, it will use only one of the values you
entered for fields with the same name, based on its internal algorithms,
for example the last-entered or the most-used.
In effect, you have declared that the values in both forms of the fields are
to made identical, which the browser did as requested by auto-filling then with
the same values.
There are other well-known variants of the field-names you used.
For example, besides name that you used, there exist
fname, mname and lname, for first, middle and last names.
In HTML5 the
form standard
has been extended, with the addition of the autocomplete
tag-attribute
that allows to distinguish, for example, between the work and home phone numbers.
For example:
<p><label>Customer name: <input name="custname" required autocomplete="shipping name"></label></p>
<p><label>Telephone: <input type=tel name="custtel" autocomplete="shipping tel"></label></p>
<p><label>E-mail address: <input type=email name="custemail" autocomplete="shipping email"></label></p>
Useful references:
- The Chromium Projects - Form Autofill
- How to trigger Autofill in Google Chrome?
HTML Living Standard - Forms
from 24 January 2019
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
add a comment |
The named fields in an HTML form are stored with their values by the browser
in the
user's profile, so can be reused in other forms via the mechanism of auto-fill.
A field with the same name is then used globally in this website and all other
websites that have fields with the same name.
In the Chromium article of
Form Autofill
this can be seen from the structure of the SQLite Database table that stores
these values as pairs, where the table-columns are:
pair_id, name, value, count.
It can be seen here that the originating website and the original page URL
do not appear here and have no importance.
You have used standard names for the form fields, which can be found in various
standards: name, phone, email. Some browsers even allow one to enter values
for them in the profile definition, which the browser then auto-fills automatically
for all forms using these standard field-names.
The browser stores all field values, not only those that have well-known names.
You have used the same names twice, that the browser will store in your profile,
to be reused again. When auto-filling, it will use only one of the values you
entered for fields with the same name, based on its internal algorithms,
for example the last-entered or the most-used.
In effect, you have declared that the values in both forms of the fields are
to made identical, which the browser did as requested by auto-filling then with
the same values.
There are other well-known variants of the field-names you used.
For example, besides name that you used, there exist
fname, mname and lname, for first, middle and last names.
In HTML5 the
form standard
has been extended, with the addition of the autocomplete
tag-attribute
that allows to distinguish, for example, between the work and home phone numbers.
For example:
<p><label>Customer name: <input name="custname" required autocomplete="shipping name"></label></p>
<p><label>Telephone: <input type=tel name="custtel" autocomplete="shipping tel"></label></p>
<p><label>E-mail address: <input type=email name="custemail" autocomplete="shipping email"></label></p>
Useful references:
- The Chromium Projects - Form Autofill
- How to trigger Autofill in Google Chrome?
HTML Living Standard - Forms
from 24 January 2019
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
add a comment |
The named fields in an HTML form are stored with their values by the browser
in the
user's profile, so can be reused in other forms via the mechanism of auto-fill.
A field with the same name is then used globally in this website and all other
websites that have fields with the same name.
In the Chromium article of
Form Autofill
this can be seen from the structure of the SQLite Database table that stores
these values as pairs, where the table-columns are:
pair_id, name, value, count.
It can be seen here that the originating website and the original page URL
do not appear here and have no importance.
You have used standard names for the form fields, which can be found in various
standards: name, phone, email. Some browsers even allow one to enter values
for them in the profile definition, which the browser then auto-fills automatically
for all forms using these standard field-names.
The browser stores all field values, not only those that have well-known names.
You have used the same names twice, that the browser will store in your profile,
to be reused again. When auto-filling, it will use only one of the values you
entered for fields with the same name, based on its internal algorithms,
for example the last-entered or the most-used.
In effect, you have declared that the values in both forms of the fields are
to made identical, which the browser did as requested by auto-filling then with
the same values.
There are other well-known variants of the field-names you used.
For example, besides name that you used, there exist
fname, mname and lname, for first, middle and last names.
In HTML5 the
form standard
has been extended, with the addition of the autocomplete
tag-attribute
that allows to distinguish, for example, between the work and home phone numbers.
For example:
<p><label>Customer name: <input name="custname" required autocomplete="shipping name"></label></p>
<p><label>Telephone: <input type=tel name="custtel" autocomplete="shipping tel"></label></p>
<p><label>E-mail address: <input type=email name="custemail" autocomplete="shipping email"></label></p>
Useful references:
- The Chromium Projects - Form Autofill
- How to trigger Autofill in Google Chrome?
HTML Living Standard - Forms
from 24 January 2019
The named fields in an HTML form are stored with their values by the browser
in the
user's profile, so can be reused in other forms via the mechanism of auto-fill.
A field with the same name is then used globally in this website and all other
websites that have fields with the same name.
In the Chromium article of
Form Autofill
this can be seen from the structure of the SQLite Database table that stores
these values as pairs, where the table-columns are:
pair_id, name, value, count.
It can be seen here that the originating website and the original page URL
do not appear here and have no importance.
You have used standard names for the form fields, which can be found in various
standards: name, phone, email. Some browsers even allow one to enter values
for them in the profile definition, which the browser then auto-fills automatically
for all forms using these standard field-names.
The browser stores all field values, not only those that have well-known names.
You have used the same names twice, that the browser will store in your profile,
to be reused again. When auto-filling, it will use only one of the values you
entered for fields with the same name, based on its internal algorithms,
for example the last-entered or the most-used.
In effect, you have declared that the values in both forms of the fields are
to made identical, which the browser did as requested by auto-filling then with
the same values.
There are other well-known variants of the field-names you used.
For example, besides name that you used, there exist
fname, mname and lname, for first, middle and last names.
In HTML5 the
form standard
has been extended, with the addition of the autocomplete
tag-attribute
that allows to distinguish, for example, between the work and home phone numbers.
For example:
<p><label>Customer name: <input name="custname" required autocomplete="shipping name"></label></p>
<p><label>Telephone: <input type=tel name="custtel" autocomplete="shipping tel"></label></p>
<p><label>E-mail address: <input type=email name="custemail" autocomplete="shipping email"></label></p>
Useful references:
- The Chromium Projects - Form Autofill
- How to trigger Autofill in Google Chrome?
HTML Living Standard - Forms
from 24 January 2019
edited Jan 25 at 9:40
answered Jan 25 at 9:34
harrymcharrymc
261k14271577
261k14271577
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
add a comment |
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I feel like this answer doesn't explain the difference in behavior between 79 and 81
– user1068446
Jan 25 at 11:45
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
I think that Chrome is moving to better respect the standard, and that this development is motivated by the HTML5 evolution of the handling of form fields. According to what you say, the handling in Chrome 78 was non-standard.
– harrymc
Jan 25 at 11:51
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1396836%2fis-this-an-autofill-bug-on-chrome-81%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
You are giving the fields the same
name
in both forms. To distinguish between them, give the fields different names in each form.– harrymc
Jan 25 at 7:57
Chrome "78 and 81"? Did you perhaps mean "68 and 71"? There is no Chrome 81 yet - the current stable version is 71 and even the canary channel is only 74.
– Inquisitive Lurker
Jan 28 at 13:37