搜尋

首頁  >  問答  >  主體

angular.js - angularjs $http.post 後 不跳轉

非常菜鳥等級的一個問題哈:

為了接入支付寶的即時到帳接口,demo給的例子是:

<form name=alipayment action=alipayapi.php method=post target="_blank">
        <button class="new-btn-login" type="submit" style="text-align:center;">确 认</button>
    </form>

我使用$http的post()方法向alipayapi.php提交post請求:



$scope.goPay=function(){
        $http({
            method : 'POST',
            //url : 'php/submitOrder.php',
            url : 'php/secback/alipay/alipayapi.php',
            data : $.param({ 'oid' : $stateParams.oid,'checkmethod': $scope.checkmethod}),
            headers : { 'Content-Type' : 'application/x-www-form-urlencoded' }
        }).success(function(data) {
            console.log(data);
        });
    };

alipayapi.php其實會拼接一個html,這個html包含表單並且會自動提交。問題是,官方的demo是會自動跳到支付寶網關,但使用$http的post()方法就不會跳轉....
附,console.log(data)的資訊:

其實我覺得我就是要一個方法,能把後來傳回來的HTML執行一遍就行了....直接eval()貌似不行

ringa_leeringa_lee2744 天前710

全部回覆(3)我來回復

  • PHP中文网

    PHP中文网2017-05-15 17:07:54

    ajax POST提交的表單不能自動跳,用form+新視窗吧

    回覆
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-15 17:07:54

    Ajax回傳拼接好的url,ajax回傳為success時用location.href=url跳轉。

    回覆
    0
  • 为情所困

    为情所困2017-05-15 17:07:54

    簡單講,就是這種需求用ajax不好完成,老實新開窗口去付款就行了

    回覆
    0
  • 取消回覆