Передача родительского элемента в метод из MarkupBuilder - PullRequest
3 голосов
/ 13 сентября 2011

У меня есть пользовательский taglib в Grails, и я использую MarkupBuilder для управления некоторыми динамическими формами.Мне нужно вытащить часть этого кода создания формы в свои собственные классы / методы, чтобы их можно было повторно использовать, и я хотел бы иметь возможность использовать MarkupBuilder внутри этих других классов / методов.Итак, у меня есть что-то вроде ...

def formContainer = new MarkupBuilder(out)
formContainer.form(...) {
  table() {
     tr() {
       td() {
          // here I want to call a method and pass a reference to td()
          generateSomeFormData(this) // but this doesn't work.
       }
     }
   }
}

В td () я хочу вызвать метод, но мне нужно передать ему ссылку на td.«this», по-видимому, не ссылается на этот элемент.

Мой другой метод может выглядеть примерно так (очень обобщенно, чтобы понять суть)

generateSomeFormData(parentElement) {
   parentElement.input(type:'text')
}

1 Ответ

3 голосов
/ 13 сентября 2011

Я верю

      generateSomeFormData( delegate )

должно работать

...