在科尔多瓦提交表格

Kar*_*han 7 android angularjs cordova ionic-framework

配置文件我想在Ionic应用程序中提交表单.

这是一种付款方式,可以在提交时将用户带到付款页面.

在iOS设备上,它可以提交和打开支付网关的页面.但是在Android中无法这样做.

当我检查日志时,我注意到的两件事是"将native-> JS模式设置为null"并且指定了没有名称的Thread.

我尽力了.但仍然没有运气.

在此输入图像描述

在此输入图像描述

Bur*_*kak 0

在iOS设备上,可以提交并打开支付网关的页面。但在 Android 中却无法做到这一点。

嘿,我在提交时使用 facebook 登录的 javascript API 遇到了类似的问题。

安装 Cordova inappbrowser 插件对我来说很有效。

https://github.com/apache/cordova-plugin-inappbrowser


另外,如果这不能解决问题,这就是我在你的位置上会做的:(我假设你有一个 LAMP 服务器)

1)使用 ajax 将所有付款数据发送到 php 文件,以将数据插入数据库,然后将插入行的 id 返回到 JavaScript 并将其存储在名为 的变量中insertedPaymentId

2)在 LAMP 服务器中创建一个 php 页面,让我们调用它;

http://www.yourdomain.com/ paymentSubmit.php

3)然后,在单击提交按钮并将付款数据插入数据库后,使用应用程序内浏览器将 insertPaymentId 推送到 paymentSubmit.php 文件;

var ref = cordova.InAppBrowser.open('http://www.yourdomain.com/paymentSubmit.php?paymentID='+insertedPaymentId, '_blank', 'location=yes');
Run Code Online (Sandbox Code Playgroud)

4)使用 GET 获取 paymentSubmit.php 文件中的 insertPaymentId 变量,并在此 php 页面上从数据库中选择付款数据,然后使用“隐藏”输入,设置此页面中的所有数据,并有一个提交按钮,例如“确认您的”付款”这样;

<form action="secure.payu/_payment.php...">
<input id="amount" type="hidden" value="<?php $db['amount']; ?>"/>
<input id="productinfo" type="hidden" value="<?php $db['productInfo']; ?>"/>
<input id="firstname" type="hidden" value="<?php $db['firstname']; ?>"/>
<input type="submit" value="Confirm"/>
</form>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,用户将在他们的应用程序上看到一个弹出窗口,要求他们确认付款,之后您实际上位于 LAMP 服务器和 PHP 环境中,做您想做的事情,如果您完成了提交,您可以通过阅读 inappbrowser 上的更多内容来关闭该窗口。

希望有帮助,让我更新。