GWT 2.4を使用しています。私は唯一の入力がページ上のテキストフィールドの値であるAJAXリクエストを提出しようとしています。ここでは、ページのボタンにハンドラをアタッチする方法を示します。GWT:テキストボックスから値を取得する際に問題が発生する
public void onModuleLoad() {
...
final com.google.gwt.dom.client.Element submitElement = Document.get().getElementById(SUBMIT_BUTTON_ID);
final Button submitButton = Button.wrap(submitElement);
...
// Add a handler to send the name to the server
GetHtmlHandler handler = new GetHtmlHandler();
submitButton.addClickHandler(handler);
}
ここに問題があります。私のハンドラでは、テキストフィールドの値を取得しようとするたびに、ページが最初に読み込まれたときにテキストフィールドに入力された値が返されます...
class GetHtmlHandler implements ClickHandler {
/**
* Fired when the user clicks on the submitButton.
*/
public void onClick(ClickEvent event) {
submitRequest();
}
/**
* Send the name from the nameField to the server and wait for a
* response.
*/
private void submitRequest() {
...
final Element nameFieldElement = DOM.getElementById(Productplus_gwt.NAME_FIELD_ID);
// This always returns an old value.
String docId = nameFieldElement.getAttribute("value");
誰かが、自分のページIDを与えられたテキストフィールドの最新の値を返すために私のハンドラの中でGWTコードを書く方法を知っていますか?
おかげで、 - Daveはまあ、あなたのような
おかげです。 DOM.getElementPropertyは実際に問題を解決しました。 – Dave
このメソッドはGWT2.6では非推奨です.DOM要素の値を取得するための新しいメソッドがあります。 – Jess