IOS 7记住了这张卡的回调

Jam*_*ell 6 javascript safari jquery recaptcha ios

我遇到这个问题,我们有一个付款页面,我们只允许您提交一次.

在iOS上,如果您输入信用卡,它会询问您是否要保存它(Safari功能不是我们的).然而,在我们的javascript验证分配布尔值以禁止重新生成之后调用它.

Safari弹出窗口阻止页面传播,没有任何反应.

我想知道当用户提交此值并继续表单提交时是否有办法使用回调或挂钩.

注意:我已经尝试autocomplete="off"过表单和输入,不会出现此弹出窗口.哪个不起作用.

编辑:我发现表单在点击之后没有提交的原因是因为我们使用了Recaptcha(它隐藏在图片中的弹出窗口后面).

在此输入图像描述

Sam*_*lly 4

令人惊讶的是,我很难弹出“自动填充”对话框。Safari 似乎需要某种类型的线索来表明您正在提交信用卡信息。如果您希望对话框消失并控制表单元素的名称,则可以将元素命名为与信用卡无关的名称:

这会提示自动填充:

<form action="test" method="post" id="credit">
    Name:<input type="text" name="cardholder"  />
    <br/>
    Credit Card Type:
    <select name="cardtype"  >
        <option></option>
        <option value="amex">amex</option>
        <option value="visa">visa</option>
        <option value="mastercard">mastercard</option>
    </select>
    <br/>
    Credit Card:<input type="text" name="cardnumber" />
    <br/>
    Expiration:<input type="text" name="expirationdate" />
    <br/>
    <input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)

这不会提示:

<form action="test" method="post" id="credit" autocomplete="off" >
    Name:<input type="text" name="h" autocomplete="off"  />
    <br/>
    Credit Card Type:
    <select name="t" autocomplete="off"  >
        <option></option>
        <option value="amex">amex</option>
        <option value="visa">visa</option>
        <option value="mastercard">mastercard</option>
    </select>
    <br/>
    Credit Card:<input type="text" name="n" autocomplete="off" />
    <br/>
    Expiration:<input type="text" name="d" autocomplete="off"  />
    <br/>
    <input type="submit">
</form>
Run Code Online (Sandbox Code Playgroud)