2016-12-13 6 views
0

私は、APIを介してCRMに提出する必要があるフォームを持っています。 APIはJSONで応答を送信します。この応答は、フォームを送信したユーザーにフィードバックを提供するために使用する必要があります。Ajaxを介してフォームを送信し、APIレスポンスに基づいてクライアントに応答する

if(error=='0'){ 
    var FormData= $("#mailform").serialize(); 
     $.ajax({ 
      url:'action.php', 
      type: "POST", 
      data: FormData, 
      beforeSend:function() { 
       $("#mailform").css('opacity','0.5'); 
      }, 
      success: function(response) { 
       $('#rest_btn').trigger('click'); 
       window.location.href = "thankyou.html?n="+name; 
       return false; 
      } 
     }); 
    } 
} 

私はaction.php内のすべてのフィールドをつかむしたら、どのように私は(crm.domain.com/webform。すなわち)サブドメイン上のページに提出し、API応答に基づいて対応しますか?あなたは、構文に誤りがあり

+0

かAjaxを完全に避ける方が良いでしょうか? – sixli

+0

PHPスクリプトからの応答に関係なく、新しいページをロードしようとしています。この場合、AJAXは不要であるようです。私は通常のSUBMITを使用し、PHPでは 'header()'を新しいページに追加します – RiggsFolly

+0

@RiggsFolly - これを行うにはどうすればよいでしょうか?私はAPIの応答に応答する必要があるようにする必要があります – sixli

答えて

0

は、あなたが..私はそれがyou.Letの試みを助けることを願っています

0

あなたのコードの最後で} 1を削除する必要が

<script type="text/javascript"> 
if(error=='0'){ 
    var FormData= $("#mailform").serialize(); 
     $.ajax({ 
      url:'http://crm.domain.com/webform', 
      type: "POST", 
      dataType:'JSON', 
      data: FormData, 
      beforeSend:function() { 
       $("#mailform").css('opacity','0.5'); 
      }, 
      success: function(response) { 
       var data=eval(response); 
       name=data.name; //name field must be return from http://crm.domain.com/webform in json format 


    $('#rest_btn').trigger('click'); 
      window.location.href = "thankyou.html?n="+name; 
      return false; 
     } 
    }); 
} 

+0

私は確信していませんが、これは同じ起点エラーになると思いますか? – Oliver

関連する問題