Question: I've got a single page application which is not based on any libraries other than jquery.

The application uses the 

```
window.history.pushState()

```

command to make each page change look like a page change, whereas actually the SPA is doing what SPA's do and staying on the same page with only the bits of the page that needed to change actually changed.

The logon box itself includes an 

```
<input type="password" /> 

```

this element's parents are destroyed using $(element).remove() before we visit the server to do a logon. (edit: the username and password boxes are not contained in a form and we do not use submit, the logon is done via a jquery ajax get)

Still on every call to pushState, firefox asks if we want to save a password. Edge, chrome and IE do not do this, only firefox. 

Any ideas what I can change in my app to stop this happening ?

I am definitely not looking for browser options to change - it has to be a change in the app - I can't placed demands on every user in our user base to have their browser setup a certain way. Its the same issue on all PCs, and happens on standard IIS on a deployed server and also IIS express in VS debugging mode. thanks

Answer: 
I dont know if this will solve your problem, more than avoid it, along with other SPA related issues, but I recommend using the URL pattern instead to keep track of where you are, then your back button, and refresh work like they should. 

Basically make each main step or page it's own URL and you just read that and act, then have it navigate to that URL instead of making a dynamic change. In frameworks like angular its referred to as a route.

One example, to make a wizard page, on the first page they select a category which goes to number 2. Instead of just updating the variable on the SPA, I navigate to <http://myapp/2> ..... When that happens, it goes to the same page, but I read the URL and know the first parameter is the category. Now, refresh and back both work and I dont have to push my page state.
I realise that this is a late response, but hopefully it will help someone. I had the same problem, using pushstate to change the URL. After logging in, each time I went to a new URL, I was prompted to save the credentials again. This only happened on Firefox.

To avoid the problem, after the successful login and the first pushstate, I set the login and password boxes to "".