我试图为我的 GWT 应用程序实现一个 javascript 时间选择器,因为那里没有任何足够好的 GWT 时间选择器小部件。在成功让 javascript 工作并直接在页面上更改值后,当我尝试将该值添加到 GWT 时,如下所示:
Element e = DOM.getElementById("time");
此元素内的 HTML 是“旧”的,即页面开始时使用的 HTML。
例如,初始 HTML 是这样的:
<input type="text" name="time" id="time" class="mobiscroll scroller" readonly="" value="11:23 AM"/>
最后一个是
<input type="text" name="time" id="time" class="mobiscroll scroller" readonly="" value="09:45 PM"/>
我从来没有得到 09:45 PM,只有 11:23 AM。我尝试使用 DOM.getElementById 和 RootPanel.get 访问“时间”,但它们给了我相同的结果。
有谁知道我做错了什么,或者有什么办法可以解决这个问题?顺便说一下,我使用的 javascript 时间选择器是 mobiscroll。
最佳答案
好的,我已经设法让它工作了。我的字段是在 GWT 上使用 HTML 小部件创建的,因为我找不到一种方法来注入(inject) id、class 和 mobiscroll 需要识别输入并使用它的其他参数。
但是,我发现你可以这样做:
time_text.getElement().setId("time");
time_text.getElement().setClassName("mobiscroll");
这基本上解决了我的问题,因为现在 GWT 可以通过 time_text.getText(); 毫无问题地访问 time_text 文本框;并且 javascript 具有识别我的输入所需的值。
这最终变成了一个愚蠢的问题,如果我的问题不够清楚,我深表歉意。
关于javascript - GWT 不会通过 javascript 访问更新的 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7997828/