2011-03-17 78 views
5

我正在創建一個grails web應用程序,並且具有主索引gsp,並且在我使用部分模板的網站上的大多數頁面上都有幾個常見組件。加載部分模板Ajax - 使用Grails

每個部分模板都是相當孤立的,包含非常不同的信息,所以每個模板都應該從不同的控制器獲取信息。

我想要的是在頁面加載,爲每個部分模板調用控制器來加載所需的內容 - 我希望有一些標籤,我可以很容易地放在我的部分模板指定一個控制器/動作,將在加載時自動調用控制器。

這可能嗎?

----編輯-----

另外,部分模板控制器中的一個將被拉回從一個Web服務,可能需要一些時間的信息,所以這將是很好的,如果我也可以加載這些模板異步..

謝謝!

回答

4

這就是<g:include>標籤的用途。它本身非常有用,但如果與springcache plugin結合使用並使用頁面片段緩存,則會更有用。 由於包含在控制器中調用常規操作,您還可以通過ajax調用來使用它。

+0

謝謝Stefan!看起來像我所需要的,但是,我在我的部分模板中包含了 .GSP和控制器方法似乎沒有被調用 - 是否有任何東西否則我需要做? – rhinds 2011-03-17 22:08:58

+0

另外,你有什麼機會可以使用include標籤指向ajax示例?再次感謝! – rhinds 2011-03-17 22:09:32

+0

取決於您的用例:如果您想通過ajax調用來調用旨在包含在其他某個操作中的操作,則應該使用http://www.grails.org/doc/latest/ref/Tags/ remoteFunction.html。如果ajax調用的結果應該包含其他一些操作,則應該在由ajax調用所調用的gsp中使用g:include。 – 2011-03-19 19:44:30