2013-04-25 57 views
0

我有一個JavaScript函數的調用remoteFunction在我的GSP文件:Grails的remotefunction:不能訪問PARAMS

function fnCreateEntitiesPerForceChart() { 
     var interval = $("#entitiesPerForceTimeIntervalSelect").val(); 
     interval = escape(interval); 
     var url = '${createLink(controller: 'federation', action: 'createEntitiesPerForceChart')}?interval='+interval; 
     $("#entitiesPerForceChart").attr("src", url); 
alert("interval is: " + interval); 
     ${remoteFunction(controller: 'federation', 
     action: 'getEntitiesPerForceTable', 
     params: '\'interval\''+':'+interval, 
     onSuccess: 'fnUpdateEntitiesPerForceTable(data,textStatus)')}; 
    } 

當我檢查網頁的源文件,該remotefunction創建此代碼:

try{DojoGrailsSpinner.show();}catch(e){} dojo.xhr('Get',{content:{'interval':null}, preventCache:true, url:'/FederationReporter/federation/getEntitiesPerForceTable', load:function(response){ fnUpdateEntitiesPerForceTable(data,textStatus); }, handle:function(response,ioargs){try{DojoGrailsSpinner.hide();}catch(e){} }, error:function(error,ioargs){try{DojoGrailsSpinner.hide();}catch(e){} } });; 

爲什麼我的變量被替換爲'null'?

謝謝!

+0

我無法找到網頁的源文件中的函數調用。函數'fnUpdateEntitiesPerForceTable'在您的函數名爲'fnCreateEntitiesPerForceChart'時被調用。你能解釋一下你的問題嗎? – micha 2013-04-25 19:09:03

+0

我是否有權假設您同時使用Jquery和dojo插件?如果沒有,那麼很可能你單獨使用了dojo插件並試圖爲你的選擇器使用jQuery語法,這可能不起作用... – Philippe 2013-04-29 15:14:04

回答

0

remoteFunction通話

params: '\'interval\': + interval'

0

嘗試以此爲params試試這個:

function fnCreateEntitiesPerForceChart() { 
    var interval = dojo.byId("entitiesPerForceTimeIntervalSelect").get("value"); 
    // [...] rest of your code 
}