Chrome 如何检测信用卡字段?

2024-02-10

在某些表单中,Chrome 自动填充会提示信用卡自动填充。

编辑:添加屏幕截图。这与浏览器自动完成不同。您之前不必以相同的形式输入该值。

我应该如何编写 HTML 表单,以便浏览器将其检测为信用卡字段并触发此行为?

与 Stripe 表单一起使用的示例将是理想的。


这个问题很老了,但我有一个2019年更新答案!

现在,您只需命名即可告诉浏览器哪些字段用于信用卡信息<input>正确。

以下答案来自我的原始答案:https://stackoverflow.com/a/41965106/1696153 https://stackoverflow.com/a/41965106/1696153

这是官方的链接当前 WHATWG HTML 标准用于启用自动完成。 https://html.spec.whatwg.org/multipage/forms.html#attr-fe-autocomplete

谷歌写了一个相当不错的指南 https://developers.google.com/web/fundamentals/design-and-ui/input/forms/#recommended_input_name_and_autocomplete_attribute_values用于开发对移动设备友好的 Web 应用程序。他们有一个部分介绍如何命名表单上的输入以轻松使用自动填充功能。尽管它是为移动设备编写的,但这适用于桌面和移动设备!

如何在 HTML 表单上启用自动完成功能

以下是有关如何启用自动完成功能的一些要点:

  • Use a <label>为了你所有的<input> fields
  • Add a autocomplete属性给你的<input>标签并使用此填写guide https://developers.google.com/web/fundamentals/design-and-ui/input/forms/#recommended_input_name_and_autocomplete_attribute_values.
  • 命名你的name and autocomplete所有属性都正确<input> tags
  • Example:

    <label for="frmNameA">Name</label>
    <input type="text" name="name" id="frmNameA"
    placeholder="Full name" required autocomplete="name">
    
    <label for="frmEmailA">Email</label>
    <input type="email" name="email" id="frmEmailA"
    placeholder="[email protected] /cdn-cgi/l/email-protection" required autocomplete="email">
    
    <!-- note that "emailC" will not be autocompleted -->
    <label for="frmEmailC">Confirm Email</label>
    <input type="email" name="emailC" id="frmEmailC"
    placeholder="[email protected] /cdn-cgi/l/email-protection" required autocomplete="email">
    
    <label for="frmPhoneNumA">Phone</label>
    <input type="tel" name="phone" id="frmPhoneNumA"
    placeholder="+1-555-555-1212" required autocomplete="tel">
    

如何命名你的<input> tags

为了触发自动完成,请确保您正确命名name and autocomplete你的属性<input>标签。这将自动允许表单上的自动完成。确保还有一个<label>!这个信息也可以查到here https://developers.google.com/web/fundamentals/design-and-ui/input/forms/#recommended_input_name_and_autocomplete_attribute_values.

以下是如何命名您的输入:

  • Name
    • 使用其中任何一个name: name fname mname lname
    • Use any of these for autocomplete:
      • name(全名)
      • given-name(名字)
      • additional-name(中间名)
      • family-name(用于姓氏)
    • 例子:<input type="text" name="fname" autocomplete="given-name">
  • Email
    • 使用其中任何一个name: email
    • 使用其中任何一个autocomplete: email
    • 例子:<input type="text" name="email" autocomplete="email">
  • Address
    • 使用其中任何一个name: address city region province state zip zip2 postal country
    • Use any of these for autocomplete:
      • For one address input:
        • street-address
      • For two address inputs:
        • address-line1
        • address-line2
      • address-level1(州或省)
      • address-level2 (city)
      • postal-code(邮政编码)
      • country
  • Phone
    • 使用其中任何一个name: phone mobile country-code area-code exchange suffix ext
    • 使用其中任何一个autocomplete: tel
  • Credit Card
    • 使用其中任何一个name: ccname cardnumber cvc ccmonth ccyear exp-date card-type
    • Use any of these for autocomplete:
      • cc-name
      • cc-number
      • cc-csc
      • cc-exp-month
      • cc-exp-year
      • cc-exp
      • cc-type
  • Usernames
    • 使用其中任何一个name: username
    • 使用其中任何一个autocomplete: username
  • Passwords
    • 使用其中任何一个name: password
    • Use any of these for autocomplete:
      • current-password(用于登录表格)
      • new-password(用于注册和密码更改表格)

资源

  • 当前用于自动完成的 WHATWG HTML 标准。 https://html.spec.whatwg.org/multipage/forms.html#attr-fe-autocomplete
  • 来自 Google 的“创建令人惊叹的表单” https://developers.google.com/web/fundamentals/design-and-ui/input/forms/#recommended_input_name_and_autocomplete_attribute_values。貌似几乎天天更新。读得非常好。
  • Google 的“通过自动填充帮助用户更快地结账” https://developers.google.com/web/updates/2015/06/checkout-faster-with-autofill2015年。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Chrome 如何检测信用卡字段? 的相关文章

  • Chrome 在展开时显示不同的对象内容

    为什么 Chrome 会根据对象视图是否展开而显示两个不同的数据集 在收缩视图中 我的对象有两个属性 在展开视图中 我的对象具有三个属性 您在控制台中看到的对象是该对象在特定时间点 即您记录该对象的时间 的快照 当您展开对象时 它将再次评估
  • Chrome 中的 net::ERR_INSECURE_RESPONSE

    从 API 获取一些数据时 我在 Chrome 控制台中收到错误 net ERR INSECURE RESPONSE 此错误通常是由于未签名的证书造成的 但是 这不是问题 因为我有有效且签名的证书 该错误根本不会经常发生 如果我重新启动 C
  • 表单提交后 Django 重定向不起作用

    Django 新手 所以这个可能有一个非常简单的答案 但我一生都找不到具体的解决方案 我只是想在使用 FileField 提交表单后重定向到新的 URL 我可以单独导航到该 URL 效果很好 文件上传正确 因此我知道它已正确验证 但重定向返
  • 防止隐藏的输入被更改

    这一直让我压力很大 我有一个隐藏的输入
  • 如何将一个表单的文件上传字段中的值复制到另一个表单的文本字段?

    我有一页上有两种不同的表格 第一个表单允许用户上传图像文件并通过电子邮件发送 第二个表单根据用户输入生成 URL 为了将图像名称添加到 URL 我需要在第二个表单中有一个字段 该字段从第一个表单的字段中复制图像名称 我不想让用户浏览并选择图
  • 多文件上传字段的重力形式预览缩略图

    我们使用重力形式将多个图像附加到图库自定义字段并创建新帖子 我们不知道如何在 HTML5 导入字段下显示图像缩略图 而不仅仅是在提交表单之前显示文件名 之前的答案仅涵盖单个文件上传 图片上传重力形式预览 https stackoverflo
  • Chrome JavaScript 日期构造函数获取 1884 年之前的日期似乎是错误的

    如果我将 1 1 1753 午夜 的 unix 毫秒时间戳值 6847786800000 传递给 Chrome 中的 JavaScript Date 构造函数 则 Chrome 给出的日期看起来非常奇怪 当我使用带有七个参数的 Date 构
  • Gmail 和 Google Chrome 12+ 中的“从剪贴板粘贴图像”功能如何工作?

    我注意到一个来自 Google 的博文 http gmailblog blogspot com 2011 06 pasting images into messages just got html其中提到 如果您使用的是最新版本的 Chro
  • 由于继承抽象类而禁用设计器?

    我有一个项目的解决方案 那个项目中有 40 或 50 种形式 我制作了 4 个基本形式 所有其他形式都可以继承 所有 4 个基本表单都继承 System Windows Forms Form 几乎 90 的形式继承了前 2 个基本形式之一
  • Chrome 内存/垃圾收集问题

    我在使用 Chrome 时遇到内存 垃圾收集问题 我正在开发一个照片上传网站 该网站允许我的客户使用 HTML5 和文件 API 拖放照片进行上传 因此这在 IE 中不起作用 它仅适用于 Chrome 和 FF 我还没有在 Safari O
  • 阻止通过 GET 传递“提交”按钮值?

    我正在尝试通过 GET 传递表单信息 这很重要 这样人们就可以将表单选择中过滤后的数据发送给其他人 问题是 使用下面的代码 它不仅传递过滤器信息 还传递提交表单值 如下所示 index php month filter Feb year f
  • Django SessionWizardView不执行done方法

    我无法让我的 SessionWizardView 工作 当我提交最后一步时 向导跳回第一步 不执行done方法 views py class CvWizardView CookieWizardView form list InfoPerso
  • 动态创建类 - Python

    我需要动态创建一个类 为了更详细地讲 我需要动态创建 Django 的子类Form class 通过 动态 我打算根据用户提供的配置创建一个类 e g 我想要一个名为CommentForm这应该子类化Form class 该类应该有一个选定
  • 如何从子窗体访问winforms父窗体控件

    在 Form1 中 我有一个 DataGridView 和多个文本框 当我单击 Form2 中的 A 按钮时 我需要将 DataGridView 和多个文本框中的数据保存到数据库中 如何在C Sharp Windows应用程序中实现 For
  • 检测到通过 ChromeDriver 启动的 Chrome 浏览器

    我正在尝试在 python 中使用 selenium chromedriver 来访问 www mouser co uk 网站 然而 从第一次拍摄开始 它就被检测为机器人 有人对此有解释吗 此后我使用的代码 options Options
  • PHP文件上传

    如果我想在文件名转到服务器的永久位置 而不是临时位置 之前更改文件名 我该如何执行此操作 代码如下
  • JW Player javaScript API 不工作

    我使用 jwplayer version 5 10 2295 和浏览器 chrome 25 My code jwplayer container setup file path width 300px height 100px autost
  • 在 JQuery 中发布表单并填充 DIV - 在 IE 中损坏

    我正在尝试创建一个通过 jQuery 发布数据并将返回值填充到同一 DIV 中的表单 这样页面就不会在发布操作时刷新 div div
  • chrome 扩展弹出窗口和背景 ajax

    我有一个要求 background html 每 10 分钟持续更新一次 当我单击弹出窗口时 它应该触发后台立即更新并在弹出窗口中显示结果 我有使用 ajax 工作的后台更新 并且我有弹出窗口触发后台以使用 ajax 工作进行立即更新 但是
  • Watir Webdriver 加载 Chrome 扩展

    我正在尝试使用 Watir 加载 chrome 扩展 但遇到了问题 我发现这个相关问题 能够启动带有 watir webdriver 加载扩展的 chrome https stackoverflow com questions 125867

随机推荐

  • 如何在 Android 应用程序中使用 3G 互联网连接?

    我制作了一个应用程序 可以连接到我在服务器上运行的程序 但它似乎只适用于 WiFi 当我尝试使用 3G 时 却无法建立连接 为了使用 3G 我必须打开或设置什么特殊功能吗 在应用程序级别 您 通常 不必担心手机可以使用哪些数据连接 您是否研
  • Fragment popbackstack触发lifecyclescope收集

    情况 我提交数据setTripDeliver 收集工作正常 触发加载 然后触发成功 我按下一个按钮转到下一个片段 B 使用replace 之后 我按后退按钮 使用popbackstack 收集成功已触发 相关代码 这些代码位于Fragmen
  • 具有 iCloud 设计的核心数据

    我使用的是 iOS 7 想要通过 iCloud 使用核心数据 这运行良好 我想要一些输入的问题如下 我的一些核心数据对象具有相关的图像 大型文本文件 我将它们作为文件存储在文件系统上 并将这些项目的 url 设置为字符串属性 现在显然这不仅
  • 日志文件的大小会影响数据库的性能吗?如何缩小日志文件?

    我刚刚检查了我的日志文件 它几乎有 45GB 我有两个问题 它总体上会影响数据库的性能吗 如何用SQL查询缩小它 请举个例子 谢谢 在正常情况下 没有必要缩小事务日志文件 这通常意味着您处于完整恢复模式 而不是定期执行事务日志备份 日志文件
  • ftrace:通过 echo 从 function_graph 更改 current_tracer 时系统崩溃

    我最近一直在使用 ftrace 来监控我系统的一些行为特征 我一直在通过一个小脚本来打开 关闭跟踪 运行脚本后 我的系统会崩溃并自行重新启动 最初 我认为脚本本身可能有错误 但后来我确定崩溃和重新启动是由于echo将一些跟踪器添加到 sys
  • LINUX:是否可以编写一个不依赖libc库的工作程序?

    我想知道我是否可以编写一个程序C 可执行的编程语言 尽管不使用单个库调用 例如甚至没有退出 如果是这样 它显然根本不依赖于库 libc ld linux 我怀疑你可以写这样的东西 但最后需要有一个无限循环 因为你不能要求操作系统退出你的进程
  • 作为参数传递的函数总是回调吗? JavaScript

    如果我有下面的代码 我将两个函数作为参数传递给函数sayHi 这是回调的示例吗 我注意到有两种运行这些 参数函数 的方法 要么如下所示 我们在定义它们的地方调用函数 作为参数 要么在 sayHi 函数中调用参数 这是回调函数和匿名函数之间的
  • Rails - capistrano 和 chmod

    我想通过 capistrano 使用 chmod 来添加文件夹的权限 例如 我想这样做 chmod 777 R vol www apps ror tutorial current log 所以 我想通过 capistrano 的任务来做到这
  • Android - 如何在 API 级别 4 的 android WebViewClient 中拦截表单 POST

    我有一个WebViewClient附在我的WebView像这样 webView setWebViewClient new MyWebViewClient 这是我的实现MyWebViewClient private class MyWebVi
  • 使用curl命令行上传多个文件到php服务器

    我需要使用curl 命令行实用程序将多个文件上传到服务器 对于单个文件 我使用以下命令没有问题 curl F email protected cdn cgi l email protection http localhost 8888 we
  • 寻找非图灵完备的语言

    我知道一点什么是a图灵机 questions tagged turing machine and a 图灵完备 questions tagged turing complete语言 但为了更好地理解 有人可以举出非图灵完备的语言的例子吗 甚
  • Java拖动图像更好&重叠图像检测

    我有两个问题要问你 已解决 在java中 我能够使用鼠标侦听器在图像中移动 如果我单击并向上移动鼠标 它只会向上移动图像 而不是将图像精确移动到指针所在的位置 不让图像跳转到我的鼠标指针所在的位置 已解决 由于我正在构建一个编辑器 如果窗口
  • getopt.h:在 Windows 中编译 Linux C 代码

    我正在尝试获取一组九个 c 文件 以及九个相关的 h 文件 在 Windows 下进行编译 该代码最初是在 Linux 中设计的 用于使用标准 GNU Linux C 库 getopt h 获取命令行参数 该库不适用于在 Windows 中
  • JS:给定二维数组中的一个点和一个距离,哪些坐标是可移动的?

    给定一个任意大小的二维数组 如下所示 var board 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  • 如何在 paypal 沙箱中获取身份令牌?

    我不知道 paypal 沙盒上的身份令牌在哪里 身份令牌与 api 编号相同吗 通过 www sandbox paypal com 访问个人资料 然后转至https www sandbox paypal com businessmanage
  • NoClassDefFoundError是如何抛出的

    我在 eclipse 中构建了一个名为 com hello 的包 并编写了一个简单的 HelloWorld 程序 Eclipse 自动添加了 package com hello 在我的程序之上 并且HelloWorld java被放入 F
  • python-将用户输入转换为整数格式时遇到问题

    user input Enter a number and I will tell you the sum of the multiples of 3 and 5 leading up to it number int user input
  • Apache HttpClient 4.1 - 代理身份验证

    我一直在尝试使用 Apache HttpComponent 的 httpclient 时从配置的属性配置代理身份验证的用户和密码 但没有成功 我发现的所有示例都引用了不再可用的方法和类 例如HttpState and setProxyCre
  • 如何观察 Vue.js 组件中 prop 的变化?

    我将图像文件路径数组传递给组件 我想知道如果我传递不同的数组 在 Vue js 组件中观察 prop 更改的最佳方式是什么 我正在使用引导轮播 所以想在数组更改时将其重置为第一个图像 为了简单起见 我将代码示例简化为 Vue compone
  • Chrome 如何检测信用卡字段?

    在某些表单中 Chrome 自动填充会提示信用卡自动填充 编辑 添加屏幕截图 这与浏览器自动完成不同 您之前不必以相同的形式输入该值 我应该如何编写 HTML 表单 以便浏览器将其检测为信用卡字段并触发此行为 与 Stripe 表单一起使用