Java 将参数传递给GWT模块
我的GWT模块UI只有一个按钮(比如AddThis/ShareThis共享按钮),所有其他的东西都是在JS弹出面板中完成的Id被指定为全局JS变量(即myConfig.Id=22),并使用JSNI方法($wnd.myConfig.Id)在GWT模块中获取该Id 注意:还有另一个way pass参数,它是通过设置Java 将参数传递给GWT模块,java,javascript,html,gwt,Java,Javascript,Html,Gwt,我的GWT模块UI只有一个按钮(比如AddThis/ShareThis共享按钮),所有其他的东西都是在JS弹出面板中完成的Id被指定为全局JS变量(即myConfig.Id=22),并使用JSNI方法($wnd.myConfig.Id)在GWT模块中获取该Id 注意:还有另一个way pass参数,它是通过设置 <div id='gwtRootPanel' alt='6323'> </div> <script type="text/javascript" langu
<div id='gwtRootPanel' alt='6323'> </div>
<script type="text/javascript" language="javascript" src="com.test.gwt.Common/com.test.gwt.Common.nocache.js"></script>
这两种方法只适用于页面中的一个按钮,现在我看不出在一个HTML页面中添加多个按钮(如博客文章列表中的每个博客都有相同的共享按钮)的任何选项是可行的 如果使用第一种方式,
如何为同一个GWT编译文件获取不同的值 如果使用第二种方式,
无法使用相同的
有什么提示或解决方案吗?
干杯,
Nachiket在同一页面上使用多个入口点可能不是一个好主意。取而代之的是使用一个单一的入口点,并在您希望页面交互的地方放置标记 因此,如果您想在某些div中粘贴GWT按钮小部件,您可以实现如下html:
因此,本例将遍历html以查找匹配的ID,然后将小部件作为子元素插入其中。此外,它还使用id作为上下文来获取页面中的更多数据。已经做了类似的操作。。设置外部JS配置变量,该变量提供DIV id的数组。。但您的解决方案更简单、更优雅。谢谢你的回答。:)
Nachiket在同一页面上使用多个入口点可能不是一个好主意。取而代之的是使用一个单一的入口点,并在您希望页面交互的地方放置标记 因此,如果您想在某些div中粘贴GWT按钮小部件,您可以实现如下html:
<div id="marker1"></div>
<!-- more stuff -->
<div id="marker2"></div>
<!-- etc. -->
public void onModuleLoad() {
int i = 1;
do {
String id = "marker" + i;
RootPanel rp = RootPanel.get(id);
if (rp == null) {
break;
}
rp.add(new MyWidget(getContextData(id)));
i++;
} while (true);
}
native String getContextData(String id) /*-{
return $wnd.myConfig[id];
}-*/;
因此,本例将遍历html以查找匹配的ID,然后将小部件作为子元素插入其中。此外,它还使用id作为上下文来获取页面中的更多数据。已经做了类似的操作。。设置外部JS配置变量,该变量提供DIV id的数组。。但您的解决方案更简单、更优雅。谢谢你的回答。:)
public void onModuleLoad() {
int i = 1;
do {
String id = "marker" + i;
RootPanel rp = RootPanel.get(id);
if (rp == null) {
break;
}
rp.add(new MyWidget(getContextData(id)));
i++;
} while (true);
}
native String getContextData(String id) /*-{
return $wnd.myConfig[id];
}-*/;