2016-08-09 7 views
0

アプリ情報:GrailsのPOSTデータ

  • のGrails 3.1.8
  • のjQuery 2.2.0

を私はAJAXを経由してPOSTしたいGrailsのフォームを持っています。私はこれを行うことができ、データはデータベースに残っています。投稿するコードは以下の通りです:

<g:javascript> 

    $('#insertSchool').submit(function() { 

     $.ajax({ 
      type: 'POST', 
      url: '/school/saveSchool', 
      data: $("#insertSchool").serialize(), 
      success: function(savedSchool) { 


      } 

     }); 

    }); 

</g:javascript> 

コントローラーコード:私は別のページにリダイレクトし、学校が保存されていると言って全体にメッセージを送りたい成功機能で

def saveSchool(School newSchool) { 

    def theSchool = schoolService.saveSchool(newSchool) 

    render theSchool as JSON 
} 

。私はこれを実装することができないので、私はJqueryの新しいです。どんな助けもありがとう。

+0

window.location = '/ school/success'; – chf

+0

他の場所にユーザーをリダイレクトする場合、なぜAjaxを使用しますか? –

+0

まだ実装していないエラーメソッドについては、私はフォームにエラーメッセージを表示したいと思います – kulsoompatel

答えて

0

リモート機能を使用して、別のページをリダイレクトすることができます。

<script> 
    $('#insertSchool').submit(function() { 
     ${remoteFunction(action: 'xyz', controller:'xyz',method: 'post', 
      params: 'variable:value',onSuccess: 'redirectFunction();')}; 
    } 

    function redirectFunction(){ 
     alert("the school has been saved"); 
     // AGAIN USE A REMOTE FUNCTION TO REDIRECT ON ACTION (your gsp page) 
    } 

</script> 
+0

私はGrails 3.1を使用しています.8 remoteFunctionタグは推奨されなくなりました。 - http://docs.grails.org/3.0.0.M1/ref/Tags/remoteFunction.html – kulsoompatel

+0

このリンクはあなたを助けます - > \ http://stackoverflow.com/questions/25245689/since-gremotefunction- in-grails-2-4-x-is-deprecated-what-should-i-use-その代わりに –