1.通过接口拿到form表单

code为后端返回的form表单数据;

document则是使用 document.querySelector('body').innerHTML 生成的html页面;

2.将form表单渲染成页面

2-1.h5是直接使用document方法

let res = "支付宝返回form表单"
// console.log(res);
// #ifdef H5
//将接口返回的Form表单显示到页面
document.querySelector('body').innerHTML = res;
//调用submit 方法
document.forms[0].submit()
// #endif

2-2.APP需要使用renderjs

renderjs基础学习请看: renderjs官网介绍

APP项目下,不使用renderjs,则不支持ocument,window方法。

完整代码如下:

<template>
<view>
<!-- 支付宝授权 -->
<template>
<view class="padding-sm text-df">
<view class="text-lg text-black text-bold">
支付宝授权说明:
</view>
<view class="text-sm text-black margin-top-sm">
1、如果需要使用支付宝进行订单支付,需要先完成支付宝授权
</view>
<view class="text-sm text-black margin-top-sm">
2、用支付宝扫描登录后,完成授权
</view>
</view>
<view class="padding flex flex-direction">
<button class="cu-btn bg-blue lg" @click="alipayBut">支付宝授权</button>
</view>
</template> <!-- #ifdef APP-PLUS -->
<view @click="renderScript.emitData" :msg="isvForm" :change:msg="renderScript.emitData" class="renderjs"
id="renderjs-view">
</view>
<!-- #endif -->
</view>
</template> <script>
export default {
data() {
return {
isvForm: ''
};
},
onLoad() {},
methods: {
alipayBut() {
let res = "支付宝返回form表单"
// #ifdef H5
//将接口返回的Form表单显示到页面
document.querySelector('body').innerHTML = res;
//调用submit 方法
document.forms[0].submit()
// #endif
// #ifdef APP-PLUS
this.isvForm = res;
// #endif
}
}
}
</script>
<!-- #ifdef APP-VUE -->
<script module="renderScript" lang="renderjs">
export default {
data() {
return {}
},
mounted() {},
methods: {
//app 使用h5 打开支付宝form表单
emitData(e) {
console.log("renderJS", e);
if (e != '') {
document.querySelector('body').innerHTML = e;
// console.log(document);
document.forms[0].submit()
}
}
}
}
</script>
<!-- #endif -->
<style>
page {
background-color: #FFFFFF !important;
}
</style>
<style lang="scss" scoped>
</style>

解析支付宝form表单

uni-app 解析支付宝form表单,h5 app唤起支付宝的更多相关文章

  1. python的Web框架,会话保持及Form表单

    会话 从打开浏览器访问到关闭浏览器,这就是一次会话. cookie 技术 cookie是保存在浏览器的,安全度比较低. # 设置cookie范式,在view中设置 def index(request) ...

  2. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

  3. Form表单 JSON Content-type解析

    Form表单 JSON Content-type解析 1 表单Form概述 在Form表单中,参数一般有: action 表单提交的url method 提交方式:post get name 表单的属 ...

  4. 解析form表单数据

    //解析form表单数据 function parseFormData(params) { var args = new Object(); for(var key in params){ if(!p ...

  5. django生命周期流程以及无有名分组和反向解析 JsonResponse和form表单上传

    django的请求生命周期流程图 要求每个人必须会画,帮助你梳理django的大致流程 路由层 1. 路由匹配:urls.py 这个文件是django框架的总路由文件,意味着还有分路由文件,每个应用都 ...

  6. Django form表单

    Form介绍 之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来.与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入, ...

  7. Django学习笔记(6)——Form表单

    知识储备:HTML表单form学习 表单,在前端页面中属于最常见的一个东西了.基本上网站信息的提交都用到了表单,所以下面来学习Django中优雅的表单系统:Form 表单的主要作用是在网页上提供一个图 ...

  8. Django组件之Form表单

    一.Django中的Form表单介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来. 与此同时我们在好多场景下都需要对用户的输入 ...

  9. Django框架:2、静态文件配置、form表单、request对象、pycharm链接数据库、django链接数据库、ORM框架

    Django框架 目录 Django框架 一.静态文件配置 1.静态文件 2.配置方法 二.form表单 1.action属性 2.method属性 三.request对象 1.基本用法 四.pych ...

  10. ajax提交form表单

    1. ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单. 2. from视图部分 <form id="loginF ...

随机推荐

  1. 【ClickHouse】0:clickhouse学习1之数据引擎(数据库引擎,表引擎)

    ClickHouse提供了大量的数据引擎,分为数据库引擎.表引擎,根据数据特点及使用场景选择合适的引擎至关重要,这里根据资料做一些总结. 数据库引擎官方文档: https://clickhouse.t ...

  2. Docker开始收费了,开始转学podman【第一篇podman容器的安装和基本操作】

    podman 什么是Podman?Podman是无守护程序容器引擎,用于在Linux系统上开发,管理和运行OCI容器.容器可以以root用户或无根模式运行.简而言之:`alias docker = p ...

  3. 解决阿里云redis监听6379,配置规则也将6379端口开放,但是外网仍无法连接6379的问题

    首先确保阿里云配置规则和服务器防火墙已开发6379端口 阿里云linux安装完成redis,并且已经运行,检测6379端口,显示redis-server正在监听,如图 修改redis.conf配置 将 ...

  4. oeasy教您玩转vim - 5 - # 插入模式

    插入模式 回忆上节课内容 我们总结了,模式切换的方式 命令模式 Normal mode 底线命令行模式 Command mode 帮助文件的正确打开方式 :h 在文档中使用鼠标 set mouse=a ...

  5. .Net Core MemoryCache 缓存

    缓存是一种开发时常用的性能优化手段,.Net自带内存缓存(MemoryCache)可以很方便的使用,下面列出简单用法. 首先通过NuGet添加 Microsoft.Extensions.Hosting ...

  6. OpenGL之ShadowMap

    流程:先创建一个RenderTexture,然后用灯光的视口渲染. 然后切换到正常相机,进行渲染,使用RenderTexture中的深度或者颜色纹理,然后还原当前顶点在灯光中的深度,两者对比,比缓存中 ...

  7. ffmpeg精简

    自:http://www.chinavideo.org/viewthread.php?tid=5567&extra=page%3D1&page=2 现在更新一下目前遇到的问题: 我想裁 ...

  8. 很呆的一个问题:我的新项目又找不到mapper这个bean了

    1.选springboot版本 <properties> <java.version>8</java.version> <project.build.sour ...

  9. RedisTemplate使用rightPushAll时的注意事项

    问题:第一次使用时rightPushAll,我以为这个方法就是直接把我们集合中的数据全部添加到redis的list里面,但是如果直接使用ArrayList类型添加,发现事情并不是我们想的这样,他并没有 ...

  10. 信奥生(OIER)请看,包囊初赛复赛全真模拟赛!

    luogu 动态追踪! 唠唠嗑 感谢 tyw 代理团主对比赛的贡献,但是由于我和 tyw 的关系紧张,tyw 取消了我和她的一切合作.CTFPC-3rd 的出题.宣传工作都交到了我手上,我这次亚历山大 ...