2011-10-12 92 views
0

我有一個通用的函數來清除文本框並選中了單選按鈕。在代碼如何使用Onchange函數在jsf標籤中創建數組?

<h:inputText value="#{termPurchaseUIBean.effectiveRate}" styleClass="textInput" id="effectiveRateText" onchange="initData2('termPurchase:selectRate:1',new Array()['termPurchase:effectiveRateText']);" label="#{label.TermPurchase_EffectiveRate}"> 

`

以下是該功能

function initData(checkId,data) { 
    alert(checkId); 
    var i; 
    for (i = 0; i < data.length; i++) { 
    alert(data); 
    document.getElementById(data).value = ""; 
    } 
    document.getElementById(checkId).checked = true; 
    alert('done'); 
} 

現在我需要建立在使用平變化function.The以下JSF標籤陣列中的代碼,但這個代碼不工作。在這種情況下,你們中的任何一個人能幫助我創建一個數組嗎?

回答

0

循環內的document.getElementById()調用不正確。您想要將當前數組項目data[i]作爲ID傳遞,而不是整個data數組。

document.getElementById(data[i]).value = ""; 

數組創建不正確。刪除new Array()。它已經隱含地用[]完成。

onchange="initData2('termPurchase:selectRate:1', ['termPurchase:effectiveRateText']);" 
+0

我已經試過,也BalusC。以下代碼是item = data [i]; \t \t \t \t \t \t document.getElementById(item).value =「」; –

+0

在Onchange事件中,數組創建是否正確BalusC.Because處於警報狀態,沒有獲取數據的值,並且正在獲取警報中的checkId值 –

+0

非常好,這比「不起作用」更有用的信息!你如何創建陣列的方式確實是錯誤的。我更新了答案。 – BalusC

相關問題