我在 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')
}