我希望通过以旧学校方式(非Ajax)POST输入字段将表单提交到外部站点,它也提交但是Angular在跳转到外部页面之前在控制台中给出了错误.
<form (submit)="onSubmit($event)" method="POST" [formGroup]="form" *ngIf='form' action="https://www.sandBox.paypal.com/cgi-bin/webscr" >
在组件中
onSubmit(obj: any) { if (!this.form.valid) { this.helper.makeFieldsDirtyAndTouched(this.form); } else { this.loader = true; // save data in online_payment_ipn this.paymentService.saveOnlinePaymentIpn({},'paypal') .subscribe(response => { obj.target.submit(); },(err: any) => { this.loader = false; this.helper.redirectToErrorPage(err.status); }); } }
现在,首先这个表单通过普通的反应形式帖子(ajax)在我的网站中保存数据.现在之后我以旧方式提交表格向Paypal整个表格发送到第三方但我得到
表单提交已取消,因为表单未连接
任何帮助表示赞赏. @ H.B.谢谢
解决方法
您可能应该使用onSubmit($event)然后取消事件到您的自定义逻辑.您可以通过event.target访问该表单.在角度绑定中传递这可能只是不起作用,我可能会弄错.