针对grails的ajax加载块ui

针对grails的ajax加载块ui,ajax,grails,blockui,Ajax,Grails,Blockui,remoteLink用于调用Grails项目中的服务器处理程序,如下所示。我可以将blockUi方法置于onload中,以使远程调用友好。如果有一点remoteLink,我可以为每个remoteLink执行此操作。但是,如果有很多remoteLink,重复这种做法并不像我想象的那样是一种好的做法 我想使用GSP标签。有没有像remoteLink ajax加载事件的拦截器这样的方法可以不重复地执行此操作?如果有,那么最好通过放置一个类似于:except='true'的标记,将某些remoteLin

remoteLink用于调用Grails项目中的服务器处理程序,如下所示。我可以将blockUi方法置于onload中,以使远程调用友好。如果有一点remoteLink,我可以为每个remoteLink执行此操作。但是,如果有很多remoteLink,重复这种做法并不像我想象的那样是一种好的做法

我想使用GSP标签。有没有像remoteLink ajax加载事件的拦截器这样的方法可以不重复地执行此操作?如果有,那么最好通过放置一个类似于:except='true'的标记,将某些remoteLink从blockUi中排除

非常感谢你的帮助

<g:remoteLink action="show"
          id="1"
          update="success"
          onLoading="blockUi()"
          onComplete="hideProgress()">Show Book 1</g:remoteLink>
Show Book 1

默认情况下,您可以创建自己的
TagLib
,并使用
加载功能调用
remoteLink

class AjaxTagLib {
  static namespace = "my" //define a namespace to not conflict with g

  def remoteLink = { attrs ->
    //default onLoading attribute
    if(!attrs.onLoading) {
      attrs.onLoading = "blockUi()"
    }
    g.remoteLink(attrs)
  }
}
然后您可以使用
g.remoteLink

<my:remoteLink action="show" id="1" update="success">Show Book 1</my:remoteLink>
Show Book 1