remoteLink:调用远程方法
示例:
//控制器
class BookControlller {
def list = {
[ books: Book.list( params ) ]
}
def show = {
[ book : Book.get( params['id'] ) ]
}
def bookByName = {
[ book : Book.findByName( params.bookName ) ]
}
def delete = {
def b = Book.get( params.id )
b.delete()
render "Book ${b.id} was deleted"
}
}
//gsp页面
<g:remoteLink action="show" id="1">Test 1</g:remoteLink>
<g:remoteLink action="show" id="1" update="[update:'success',failure:'error']" on404="alert('not found');">Test 2</g:remoteLink>
<g:remoteLink action="show" id="1" update="success" onLoading="showSpinner();">Test 3</g:remoteLink>
<g:remoteLink action="show" id="1" update="success" params="[sortBy:'name',offset:offset]">Test 4</g:remoteLink>
//下面代码在执行完删除时,将"Book ${b.id} was deleted"信息更新到message div块中
<div id="message"></div>
<g:remoteLink action="delete" id="1" update="message">Delete Book</g:remoteLink>
描述:
属性
action (optional) - the name of the action to use in the link, if not specified the default action will be linked
controller (optional) - the name of the controller to use in the link, if not specified the current controller will be linked
id (optional) - The id to use in the link
update (optional) - Either a map containing the elements to update for 'success' or 'failure' states, or a string with the element to update in which cause failure events would be ignored
before (optional) - The javascript function to call before the remote function call
after (optional) - The javascript function to call after the remote function call
asynchronous (optional) - Whether to do the call asynchronously or not (defaults to true)
method (optional) - The method to use the execute the call (defaults to "post")
事件
onSuccess (optional) - The javascript function to call if successful
onFailure (optional) - The javascript function to call if the call failed
on_ERROR_CODE (optional) - The javascript function to call to handle specified error codes (eg on404="alert('not found!')")
onUninitialized (optional) - The javascript function to call the a ajax engine failed to initialise
onLoading (optional) - The javascript function to call when the remote function is loading the response
onLoaded (optional) - The javascript function to call when the remote function is completed loading the response
onComplete (optional) - The javascript function to call when the remote function is complete, including any updates