Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Stop Dashlane auto-fill on specific input fields?

Tags:

css

Does anybody know how to hint to the Dashlane browser plug-in to leave an <input> text field alone?

For most browser password managers, setting the auto-complete property to off works, Eg: <input type='text' autocomplete='off' />.

For LastPass, this additional attribute is recommended: data-lpignore="true".

I have no idea what this might be for Dashlane. I have noticed that the attributes data-kwimpalastatus="alive" and data-kwimpalaid="xxxx-x" (where xxxx-x is an auto-generated identifier) are added to my page, so this looks like a sensible place to start, but I've not had much joy figuring out the magic incantation...

In case anyone asks, the only other browser extensions I'm using are DuckDuckGo and Google Docs offline, so it's a reasonably safe bet that the datakwimpala* attributes are down to Dashlane.

Does anyone have any ideas??

Thanks!

like image 369
gplumb Avatar asked Jan 27 '20 22:01

gplumb


3 Answers

Dashlane is using the attribute data-form-type to know what type of value it should use to prefill the input. If you set this attribute with a value "other", it will stop Dashlane from prepopulating your input fields.

See example below :

<input type="text" autocomplete="off" data-lpignore="true" data-form-type="other" />

Note 1: There is also the attribute "data-lpignore" for lastpass, and also "autocomplete" for the rest.

Note 2 : The "data-form-type" attribute can be used to tell Dashlane how to pre-fill as well. There are other values you can use for this attribute like : billing, change_password, contact, forgot_password, identity, login, newsletter, other, payment, register search, shopping_basket, shipping

like image 179
Remy Burney Avatar answered Sep 22 '22 21:09

Remy Burney


Daniel from Dashlane here. We recently switched our analysis engine to ML and we have a solution for you. Just add the data-form-type attribute with value "other" to any field you want us to ignore.

For more information, we released a public spec available here.

like image 42
Daniel Glazman Avatar answered Sep 21 '22 21:09

Daniel Glazman


tl;dr disabling autofill on specific input fields is not supported and not currently on their roadmap.

I spoke to Dashlane's Support just now, here is an shortened summary:

ME: I'm looking for information on how to disable Dashlane autocomplete for specific form fields, but couldn't find anything at https://support.dashlane.com/. I've created an example here to demonstrate and would welcome any help.

DASHLANE: Right now we can only stop Dashlane for a specific page or website never for specific fields

ME: do you know if there are any plans to allow Developers to disable autofill for specific fields? My real example is a postcode/zip code field which has its own autocomplete which lists addresses which match the postcode you entered - and the dashlane autofill dialog appearing over the top of it presents a problem to users of our sites.

DASHLANE: I understand how this may affect your Users I'm so sorry, for now, we don't have it on our roadmap, But I will be sharing your feedback with our Product Team, who are always looking to integrate our users' input into their plans for upcoming updates to Dashlane.

ME: Are there any JavaScript variables or other changes to the webpage we can look for, so that we could disable our own autocomplete feature for dashlane users? so they're not presented with 2 which clash? We'd use that information to turn ours off, so the only one in use would be Dashlane's, which can't be disabled.

DASHLANE: We don't have a "blueprint" of the code in order to provide any JavaScript code

ME: If some kind of attribute (ideally autocomplete="off" which seems to be the standard) could be supported it would be a huge help, this is a cause of abandonment in our checkout process and I'm sure it must affect other websites as well as ours. Thanks for your time.

DASHLANE: Let's hope this can be a reality in the future

The example I mentioned is reproduced here:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width" />
    <title>Disabling Dashlane Form AutoComplete?</title>
  </head>
  <body>
    <h1>Disabling Dashlane Form AutoComplete?</h1>
    <p>
      As a web developer, how can I instruct Dashlane not to display a prompt to
      autocomplete a particular form field?
    </p>
    <p>
      In this example, the Last Name field has
      <code>autocomplete="off"</code> but DashLane still displays an autofill
      dialog when you focus on that element.
    </p>
    <p>
      Thanks
    </p>
    <fieldset>
      <legend>Example Form</legend>
      <form action="https://output.jsbin.com/setopoyawi" method="GET">
        <ul>
          <li>
            <label>
              First Name
              <input name="first-name" type="text" autocomplete="given-name" />
            </label>
          </li>
          <li>
            <label>
              Last Name
              <input name="last-name" type="text" autocomplete="off" />
            </label>
          </li>
          <li>
            <label>
              Password
              <input
                name="password"
                type="password"
                autocomplete="new-password"
              />
            </label>
          </li>
        </ul>
        <button type="submit">Submit</button>
      </form>
    </fieldset>
    <h2>References</h2>
    <ul>
      <li>
        <a
          href="https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete"
          >https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete</a
        >
      </li>
      <li>
        <a
          href="https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion"
          >https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion</a
        >
      </li>
    </ul>
  </body>
</html>
like image 27
Jamie Mason Avatar answered Sep 21 '22 21:09

Jamie Mason