2016-08-16 99 views
0

我必須在點擊和打開復選框時調用javascript函數。在那個javascript函數中,我必須傳遞一個jsf參數。 jsf參數的值將在運行時評估並傳遞。正在爲Onclick函數正確計算myClassDataItem.message的值,但在window.onload中,值未被計算。 語法是否正確?jsf中的window.onload無法正常工作

<h:selectBooleanCheckbox id="firstCheckbox" 
onclick= "showMsg('#{myClassDataItem.message}');"/> 

window.onload = showMsg('#{myClassDataItem.message}'); 
+0

你的'window.onload'位於哪裏? –

回答

0

放置window.onload呼叫<script> - 塊內:

<script type="text/javascript"> 
    window.onload = showMsg('#{myClassDataItem.message}'); 
</script> 

和它的作品。我echoController只是返回一個字符串對象:

@Named 
@SessionScoped 
public class EchoController implements Serializable { 
    public String getEchoString() { return "Echo"; } 
} 

和下面的代碼PICE正常工作:

<script type="text/javascript"> 
    function showMsg(msg) { alert(msg); } 
    window.onload = showMsg('#{echoController.echoString}'); 
</script> 

但作爲他的答案here裏面提到的BalusC你不應該這樣做的。