Array.prototype.slice.call(document.querySelectorAll("input[type=hidden]")).forEach(function (ele) {
queryParam += '&' + ele.name + "=" + encodeURIComponent(ele.value);
});
var gotoUrl = document.querySelector("form").getAttribute('action') + '&' + queryParam;
解决方案:
修改ap.js 下的b.pay,修改为如下
//只需要关注pay方法里面的,外面该是怎样就是怎样
pay=function(d){
var c=encodeURIComponent(a.encode(d));
var url = window.location.protocol + "//" + window.location.host + "/?time=" + new Date() + "#/pay?goto=" + c
window.location.href = url //由于微信截断#之后内容,加上随机数来解决,
};
2、pay为跳转的中间页面,使用的是vue ,配置为路由地址,根据项目的情况而定
3、一般跳转到第三方,提示参数出现问题,看看form里面action属性,是否带有参数,还是只有 https://openapi.alipay.com/gateway.do
有的会带参数,sign,method,charset等都带上了,区别这里拼接的符号不一样,有参数的拼接&,否者是?
var gotoUrl = document.querySelector("form").getAttribute('action') + '&' + queryParam;
_AP.pay(gotoUrl);