0

g:formRemote は grails で複数の div を更新できますか?複数の div を更新するための実行可能な戦略は何ですか? 誰かがこれを例で説明できますか...

4

1 に答える 1

2

はい、ページの更新を制御できます。update属性を使用する代わりに、onSuccessイベントを使用します。

ドキュメントから:

onSuccess (オプション) - 成功した場合に呼び出す JavaScript 関数

意見

<g:formRemote name="myForm" onSuccess="updateBook(data)" method="GET"
              action="${createLink(controller: 'book', action: 'show')}"
              url="[controller: 'book', action: 'show']">
    Book Id: <input name="id" type="text" />
</g:formRemote>

<script type='text/javascript'>
function updateBook(data) {
  //do what you want here
}
</script>

コントローラ

def show() {
  //TODO: validate if exists and etc..
  def book = Book.get(params.id)
  render book as JSON //send JSON to the client, handling in the updateBook function.  
}

フロー

  • ユーザー通知ID
  • Ajaxリクエストが行われる
  • g:formRemote は JavaScript 関数 updateBook を呼び出します
  • データには、解析して必要なことを実行できる JSON が含まれます (div の更新)
于 2013-07-19T12:04:50.513 に答える