48

I have an asp page with some Textbox controls on it.

By default, the browser will suggest previously entered values for each box.

I'd like to prevent that behavior for some of the textboxes.

Is there a way to reliably do that across all major browsers?

I've tried setting

AutoCompleteType="Disabled"

But that seems to have no effect in Firefox.

Here is an image of the behavior I'm trying to prevent.

enter image description here

ArunPratap
  • 4,816
  • 7
  • 25
  • 43
JosephStyons
  • 57,317
  • 63
  • 160
  • 234
  • Note it doesn't seem to be possible to turn autocomplete off in IE https://stackoverflow.com/questions/22328608/ie-11-explorer-textbox-autocomplete-off-is-not-working – Matthew Lock Mar 29 '21 at 08:04

8 Answers8

81

For firefox

Either:

<asp:TextBox id="Textbox1" runat="server" autocomplete="off"></asp:TextBox>

Or from the CodeBehind:

Textbox1.Attributes.Add("autocomplete", "off");
PraveenVenu
  • 8,217
  • 4
  • 30
  • 39
  • 2
    the asp markup seems to throw a warning saying "The values permitted for this attribute do not include 'off'" but adding the attribute as it shows in the second code blocks works! – owen gerig Feb 21 '14 at 15:55
  • The first line works for me, just ignore the warning :P – Aximili Mar 20 '14 at 04:24
  • This got me where I needed to go. For a Telerik RadTextBox it's ``. – JMD Apr 10 '15 at 22:52
11

Autocomplete need to set off from textbox

<asp:TextBox ID="TextBox1" runat="server" autocomplete="off"></asp:TextBox>
Pankaj
  • 9,749
  • 32
  • 139
  • 283
  • as my comments above state, this no longer seems to work. need to do it via code using the Attributes.Add as shown above – owen gerig Feb 21 '14 at 15:59
10

By making AutoCompleteType="Disabled",

    <asp:TextBox runat="server" ID="txt_userid" AutoCompleteType="Disabled"></asp:TextBox>  

By setting autocomplete="off",

    <asp:TextBox runat="server" ID="txt_userid" autocomplete="off"></asp:TextBox>  

By Setting Form autocomplete="off",

    <form id="form1" runat="server" autocomplete="off">  
    //your content  
    </form>  

By using code in .cs page,

    protected void Page_Load(object sender, EventArgs e)   
    {  
        if (!Page.IsPostBack)  
        {  
            txt_userid.Attributes.Add("autocomplete", "off");  
        }  
    }  

By Using Jquery

    <head runat = "server" >  
        < title > < /title> < script src = "Scripts/jquery-1.6.4.min.js" > < /script> < script type = "text/javascript" >  
        $(document).ready(function()  
        {  
            $('#txt_userid').attr('autocomplete', 'off');  
        });  
    //document.getElementById("txt_userid").autocomplete = "off"  
    < /script>  

and here is my textbox in ,

    <asp:TextBox runat="server" ID="txt_userid" ></asp:TextBox>  

By Setting textbox attribute in code,

    protected void Page_Load(object sender, EventArgs e)   
    {  
        if (!Page.IsPostBack)  
        {  
            txt_userid.Attributes.Add("autocomplete", "off");  
        }  
    } 
Martijn Pieters
  • 1,048,767
  • 296
  • 4,058
  • 3,343
ArunPratap
  • 4,816
  • 7
  • 25
  • 43
  • 2
    Setting AutoCompleteType="Disabled" didn't work in SharePoint web part, it didn't render anything. I don't know why. But setting autocomplete="off" did work. – Ariwibawa Jan 08 '21 at 03:02
7

This is the answer.

<asp:TextBox id="yourtextBoxname" runat="server" AutoCompleteType="Disabled"></asp:TextBox>

AutoCompleteType="Disabled"

If you still get the pre-filled boxes for example in the Firefox browser then its the browser's fault. You have to go

'Options' --> 'Security'(tab) --> Untick

'Remember password for sites and click on Saved Passwords button to delete any details that the browser has saved.

This should solve the problem

Nikolaj Dam Larsen
  • 5,455
  • 4
  • 32
  • 45
sebastian
  • 111
  • 1
  • 5
6

Trying from the CodeBehind:

Textbox1.Attributes.Add("autocomplete", "off");
owen gerig
  • 6,165
  • 6
  • 52
  • 91
5eeker
  • 1,016
  • 1
  • 9
  • 30
6

Adding autocomplete="new-password" to the password field did the trick. Removed auto filling of both user name and password fields in Chrome.

<input type="password" name="whatever" autocomplete="new-password" />
ArunPratap
  • 4,816
  • 7
  • 25
  • 43
Prabo
  • 164
  • 1
  • 2
  • 12
1

Please note that for Chrome to work properly it needs to be autocomplete="false"

ArunPratap
  • 4,816
  • 7
  • 25
  • 43
Miguel
  • 1,575
  • 1
  • 27
  • 31
0

This works for me

   <script type="text/javascript">
        var c = document.getElementById("<%=TextBox1.ClientID %>");
        c.select =
        function (event, ui) 
        { this.value = ""; return false; }
    </script>