2010-11-09 77 views
0

我想在用戶單擊inputText組件時向用戶顯示選項列表。我需要使用IceFaces中的onclick屬性通過JavaScript調用Bean方法。使用javascript調用bean方法

<ice:inputText id="inputText1" partialSubmit="true" value="" onclick="" /> 

我該如何做到這一點?

+0

什麼是bean方法? – Neall 2010-11-09 17:38:40

+0

Bean方法是JSF文件的backing bean中定義的任何方法。這個支持bean以簡單的話來說就是一個類和JSF頁面的後端。 – venomrld 2010-11-10 04:22:08

+1

畢竟只是想要*自動完成*輸入嗎?然後使用'ice:selectInputText'來代替。這裏的教程:http://facestutorials.icefaces.org/tutorial/autocomplete-tutorial.html – BalusC 2010-11-10 18:09:38

回答

1

正如@Neall所說,您需要啓動一個XMLHttpRequest並將數據返回給客戶端。有很多方法可以做到這一點,我不知道你所指的框架,但是一般情況下,你啓動XMLHttpRequest,例如將一些參數傳遞給Web方法,然後返回JSON數據格式。當你發出請求時,它通常有成功的回調函數和錯誤的回調函數。在成功事件中,您解析JSON響應並執行您需要的任何操作。

在這裏看看,例如:

http://elegantcode.com/2009/02/21/javascript-arrays-via-jquery-ajax-to-an-aspnet-webmethod/

+0

[IceFaces](http://icefaces.org)已經是一個Ajax的JSF組件庫。引入自己的JS是很麻煩的。 OP在這個方向上犯了錯誤。 – BalusC 2010-11-10 18:11:10

1

看起來你試圖運行服務器端代碼,當用戶在客戶端採取一些行動。您可能想要啓動XMLHttpRequest

XMLHttpRequest基本上只是打一個URL,可選地返回一些數據到瀏覽器。這就是人們通常所說的AJAX。 (對於異步JavaScript和XML--儘管人們通常使用JSON而不是XML)

+0

嗨!其實我正在使用已經是ajax框架的icefaces。 – venomrld 2010-11-10 17:23:36

+0

我想要做的是向用戶顯示一個選項列表,當他/她點擊一個inputtext組件(javascript onclick事件)時。 – venomrld 2010-11-10 17:24:56