我有一个简单的付款表格:
<form method="POST" action="https://www.liqpay.ua/api/3/checkout" accept-charset="utf-8">
<input name="data" value="{{data}}" />
<input name="signature" value="{{signature}}" />
<input type="image" src="//static.liqpay.ua/buttons/p1ru.radius.png" />
</form>
我可以向您保证表单可以正常工作,我已经在C#上进行了一些更改:
<div class="container">
<form method="POST" action="https://www.liqpay.ua/api/3/checkout" accept-charset="utf-8">
<input type="hidden" name="data" value="@ViewData["PaymentData"]" />
<input type="hidden" name="signature" value="@ViewData["Signature"]" />
<input type="image" src="//static.liqpay.ua/buttons/p1ru.radius.png" />
</form>
</div>
所有参数正确传递。似乎Angular不要让我去这样的链接或某事。帮助。
更新
好的,我这样更改了表单:
<form [formGroup]="payForm" (ngSubmit)="LiqPay()" #formDir="ngForm" novalidate>
<input formControlName="data" name="data" value="{{data}}" />
<input formControlName="signature" name="signature" value="{{signature}}" />
<button type="submit" class="btn btn-default" ng-href="https://www.liqpay.ua/api/3/checkout">go</button>
</form>
使用LiqPay方法:
LiqPay(){
let headers = new Headers();
headers.append('Content-Type', 'application/json');
this.payForm.value.data = this.data;
this.payForm.value.signature = this.signature;
this._http.post('https://www.liqpay.ua/api/3/checkout',
this.payForm,{headers}).map((response: Response) => response.json());
}
现在,我想请求已发送,但没有在所需的链接(https://www.liqpay.ua/api/3/checkout)上重定向。那么,如何更改表单以重定向到包含帖子数据的此链接?
答案 0 :(得分:1)
在LiqPay方法中,您尝试将发帖请求发送到https://www.liqpay.ua/api/3/checkout。在按钮中,您具有ng-href属性(尝试浏览器转到该url)。我认为这是不正确的。您将sendind异步记录下来,同时将用户发送到该URL。
我可以理解,您正在向付款结帐发送表格吗?好的,您可以在表单中使用操作,就像C#示例一样。
我已经测试了您的初始代码
<form method="POST" action="https://www.liqpay.ua/api/3/checkout" accept-charset="utf-8">
<input name="data" value="{{data}}" />
<input name="signature" value="{{signature}}" />
<input type="image" src="//static.liqpay.ua/buttons/p1ru.radius.png" />
</form>
它有效... 您可以在这里查看: https://jsfiddle.net/L1ruajzn/