Mozilla Firefox password manager is weird. He has his own mind.
https://wiki.mozilla.org/Firefox%3aPassword_Manager
If you logged into your application using Mozilla and your login field has an identifier “L” and your password field has an identifier “P”, it remembers these identifiers so that it can insert values for you. This only happens if you have this check box selected: Settings> Security> Remember Password.

Now, if you have a page (or form .. not entirely sure) with AT LEAST one input field with an identifier that matches "L" or "P", Mozilla Password Manager (built into the browser) will try to use your intelligence to fill in the values for you, even if both fields do not exist. See the example below for a better image. This can help you solve your problem.
Let me explain ...
I am working on forensic software, where users must check everything that they do in each workflow, so this requires their password, so if our clients are ever checked by the FDA, we have a record of the workflow. Thus, we have a password field in our application with each button, but since the user is already registered, we do not want them to also enter their username, so that this field is suppressed. This is what I had to do for this methodology to work (for Mozilla). I had to add a hidden (display: none) input field.
<input runat="server" type="text" style="display:none;"> <asp:TextBox id="TxtPassword" Runat="server" Width="80" EnableViewState="False" TextMode="Password"></asp:TextBox>
The TextBox control actually displays the input field in HTML. Before I fixed this problem, I had a search field for the page preceding the password field, and it put the username in that field. If I did not have a hidden input field in front of the input field with the identifier "P" (or in this case "TxtPassword"), he would still put the login in my search field, because it was preceded by the input field with the identifier "TxtPassword". Having a hidden field (which is hidden) should fix this problem in Mozilla.The username goes into this input field and notices that it doesn’t even have an identifier, but Mozilla puts the login in this field because of the Mozilla setting shown in the dialog box above.
source share