2013-07-03 52 views
0

我想在bean變量中使用javascript var。這個變量是我需要從我的對象中獲取所有值的索引。但它不承認,我怎麼能做到這一點?或者你可以幫助我選擇另一種解決方案。謝謝。在javascript中使用javascript變量jsf

function cargarCategorias() { 
    while (indice <= 5){ 
     var valor = "#{ctrDashboard.objReporte1.get(indice)[0]}"; 
     categorias.push(valor); 
    } 
} 

回答

0

你似乎誤認爲Java代碼(ctrDashboard.getObjReporte1.get(indice)[0])服務器計算機和JavaScript代碼(function cargarCategorias() { ... })瀏覽器上的上下文中的客戶機上運行的工作。因此,你不能直接交換使用這兩種語言。但是,理解JSF框架的生命週期將幫助您實現您的目標。

所以,你的問題可以通過使用不同的工具來解決。例如,如果要的一組數據的預加載到頁面上在初始GET請求一個JS上下文中,需要有在JS元件的陣列,而頁面被呈現:

<script type="text/javascript"> 
    var valors = #{bean.valorsJson}; 
</script> 

豆方法:

public String getValorsJson() { 
    return new Gson.toJson(valorList); 
} 

我建議使用GSON庫爲目的,但你可以自由選擇創建的方式JSON對象自己。

通過這種方法,您將在JS函數中使用JavaScript變量valors進行遍歷。

如果您想通過AJAX更新您的數組,可以採取類似的方法。

值得注意的最後一件事是,這只是一個詭計通常用於克服您的JSF應用程序設計的缺點。它可能表明你對所提到的工作使用了錯誤的框架,並且你沒有在JSF中找到合適的工具,但根據迄今披露的信息,這是不可能知道的。

+0

卓越,現在我把整個對象發送給javascript,它的解決方案非常有用,非常感謝。 – user2544909

+0

不客氣! – skuntsel