我正在使用BrainTree托管字段
https://developers.braintreepayments.com/guides/hosted-fields/overview/javascript/v3
用于支付网关。
加载“信用卡”表单后,用户必须单击输入才能开始。
我的客户希望输入长卡号的输入框。出于安全原因,由于表单位于iFrame中,因此我不知道如何执行此操作,并且文档中的选项数量似乎并不涵盖设置文本区域的重点。
我在这里错过了什么吗?还是根本不可能?
答案 0 :(得分:1)
您要的内容无法用于任意的第三方iframe,但是Braintree的API似乎确实可以通过在hostedFieldInstance上使用focus() method来允许它:
hostedFieldsInstance.focus('fieldname', function (focusErr) {
if (focusErr) {
console.error(focusErr);
}
});
答案 1 :(得分:0)
在处理iFrame时出现了问题。您可以手动设置iFrame的焦点,即使有或没有延迟,但是如果iFrame提供者没有开发表单来专注于该元素并且不提供postMessage API,那么您基本上就无法选择,因为它不在您的秒内沙箱。如果可能的话,基本上会损害浏览器的安全性。
答案 2 :(得分:0)
关闭问题,因为这是不可能的。
所有“解决方案”都试图破坏客户卡详细信息的安全性。