2010-11-19 38 views
1

我有一個嵌入WebBrowser,我添加了一個LocationListener。如何在WebBrowser內的Javascript代碼和Java代碼之間傳遞信息

mywebBrowser.addLocationListener(new LocationListener(){ 
    public void changing(LocationEvent event){ 
    event.getLocation() 
    } 
}) ; 

在這個WebBrowser中,我有一個表單可以輸入文本。我也有一個鏈接允許用戶導航到其他頁面。

<form method="get" action="{$self}" name="addcommentform"> 
<textarea title="{$enterComment}" name="comment" class="commentarea" </textarea> 
<input class="Button" type="submit" value="{$postComment}" /> 
</form> 

我的問題是,如果用戶輸入文本,然後點擊一些鏈接,而不是提交按鈕,我怎麼能找出什麼是用戶在Java端輸入的文本?如果他/她輸入了一些文本,我想從警告消息中提示用戶併發出警告消息。

我無法找到一種方法將在此textarea中輸入的文本傳遞給我在java端的代碼。

我認爲傳遞信息的最好方法是通過event.getLocation()字符串。但是,如何追加文本以便event.getLocation()可以獲得這樣的文本?

非常感謝。

+1

您使用什麼API或框架來獲得WebBrowser? – 2010-11-19 20:09:13

+1

我正在使用Eclipse插件框架。我正在使用com.ibm.rcp.browser.service.WebBrowser; – dojomedojo 2010-11-19 20:52:14

回答

0

您可以從Java類(Servlet,JSP,Struts操作等)獲取GET或POST參數。

例如,如果你想從一個Servlet的GET參數,你可以使用:

public class ThreeParams extends HttpServlet { 
    public void doGet(HttpServletRequest request, 
        HttpServletResponse response) 
     throws ServletException, IOException { 
    String comment = request.getParameter("comment"); 
    // Do something with the value 
    } 
} 
0

您是否嘗試過的web瀏覽器組件上的getDocument()方法?我不確定這是否會實時更新,但可能值得一看。

相關問題