2015-09-22 80 views
0

我的場景:Grails Ajax:渲染模板不拾取父資源(js)

我正在使用grails remoteFunction,它是呈現模板。我在使用一些Jquery方法的渲染模板上有一個滑塊。以前,我將js保存在此模板中,但問題與性能有關。每次ajax加載導致性能問題的jquery類。

有沒有辦法在通過Ajax渲染後通過模板獲取父資源?

內index.gsp中頁:

<g:if test="${action=="individual"}"> 
    <g:render template="individual" /> 
</g:if> 
<g:if test="${action=="project"}"> 
    <g:render template="project" /> 
</g:if> 

<asset:javascript src="bootstrap/jquery-1.10.2.js"></asset:javascript> 
<asset:javascript src="bootstrap/bootstrap-slider.js"></asset:javascript> 
<asset:javascript src="resource_utilization/slider.js"></asset:javascript> 
<asset:javascript src="resource_utilization/resource-utilization.js"></asset:javascript> 
<asset:javascript src="jquery.blockUI.js"></asset:javascript> 

在控制器:

render template:"individual" 

回答

0

請仔細閱讀本link。當你在父代中渲染模板時,你的jquery將無法工作。爲了達到這個目的,你必須重新激活js資源。

我做了以下工作。在父gsp中加載所有資源並添加一個方法來初始化滑塊。

<script type="text/javascript"> 
     function refreshUI() { 
      // your slider initialization code goes here 

     }; 
    </script> 

在模板最後只需調用父函數。

<script> 
refreshUI(); 
</script> 

這將刷新您的用戶界面,一切都會正常工作。