2013-08-16 3 views
0

remoteLink는 Grails 프로젝트에서 아래와 같이 서버 핸들러를 호출하는 데 사용됩니다. 블록 호출을 onLoading에 배치하여 원격 호출을 친숙하게 만들 수 있습니다. 약간의 remoteLink가 있으면 모든 remoteLink에 대해이 작업을 수행 할 수 있습니다. 그러나 많은 remoteLink가 있다면, 이것을 반복하는 것은 나의 상상력과 같은 좋은 습관이 아닙니다.블록 aiax에 대한 grails로드

GSP 태그를 사용하고 싶습니다. 반복하지 않고 remoteLink ajax 로딩 이벤트를위한 인터셉터와 같은 메소드가 있습니까? 그렇다면 다음과 같은 태그를 배치하여 일부 remoteLink가 blockUi에서 제외 될 수 있다면 더 좋을 것입니다 : except = 'true'

감사합니다.

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

답변

1

당신은 당신의 자신의 TagLib를 만들고 기본적으로 onLoadingremoteLink를 호출 할 수 있습니다.

<my:remoteLink action="show" id="1" update="success">Show Book 1</my: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의 instad을 사용할 수 있습니다