2016-07-04 6 views
0

私のサーバーの端末では、「GET/GET」を見ましたが、ブラウザはURLにリダイレクトしません。このコードで何が間違っていますか?ajaxコールはページにリダイレクト

ルート:

match '/example_url', to: 'controllerx#sup', via: 'get' 

クライアント側:

$.ajax({ 
    type: "GET",// GET in place of POST 
    contentType: "application/json; charset=utf-8", 
    url: "/example_url", 
    data : {example: 'hey'}, 
    success: function(result) { 
    //TODO 
    }, 
    error: errorFunction 
}); 

コントローラー:

def sup 
    respond_to do |format| 
    format.js { redirect_to another_path } 
    end 
end 

答えて

1

あなたがいないアクションがリモートで呼び出さので、コントローラのアクションからリダイレクトすることができ。これを試してみてください :

クライアント:

$.ajax({ 
    type: "GET",// GET in place of POST 
    dataType: "json", 
    url: "/example_url", 
    headers: { 
     'Content-Type': 'application/json' 
    }, 
    data : {example: 'hey'}, 
    success: function(result) { 
    window.location = result.location; 
    }, 
    error: errorFunction 
}); 

コントローラー:

def sup 
    respond_to do |format| 
    format.json { render json: { location: another_path } } 
    end 
end 
+0

は "ActionController :: UnknownFormat - ActionController :: UnknownFormat:" 働かない – dijiri

+0

更新の答えをチェックし@dijiriを。 –

+0

同じエラー:/ @Зелёый – dijiri

関連する問題