0
我試圖渲染一個按鈕,該按鈕應該最初呈現禁用狀態,並且在某些時候由客戶端操作啓用。我使用的組件從A4J用下面的代碼:在JSF中呈現禁用的按鈕
<a4j:commandButton id="myButton" disabled="true" onclick="myFunction()">
問題是,當殘疾人屬性設置爲true,則事件不會附着的組件,導致此HTML代碼:
<input type="button" onclick="return false" ... />
所以,當我嘗試啓用通過JavaScript,啓用按鈕,但按鈕沒有附加事件偵聽器。
到目前爲止,只有兩個解決方案,我能想到的是:
- 分配殘疾人屬性值的bean屬性,並重新呈現按鈕。
- 渲染最初啓用,通過JavaScript
這兩個選項的工作,但他們不是很乾淨負載頁面上禁用,我不希望我每次啓用按鈕進行申請到服務器。
重新渲染的問題在於啓用/禁用被附加到由onRowClick事件控制的兩個表的狀態,並且我不想讓我的服務器氾濫不必要的請求。 – jasalguero
然後去找你的第二個選項,如果安全不是你關心的話。 – BalusC
我沒有看到那種情況下的安全缺陷?通過JavaScript啓用/禁用組件有什麼問題?我認爲它更像是一個商業問題,因爲它可能不會發送所有需要的數據,但有了正確的驗證/衛生設施,它可以解決它,有沒有我沒有看到的東西? – jasalguero