我想在HTMLPanel元素中包含Javascript代码,但它不起作用。请你帮助我好吗?提前谢谢。
脚本/ pro.js
alert('hello');
HTMLPANEL无效(未显示提醒)
MyPage.java(适用于MyPage.html的EntryPoint)
String preHtml="<script type=\"text/javascript\" src=\"Scripts/pro.js\"></script>";
HTMLPanel prePanel=new HTMLPanel(preHtml);
RootPanel.get("scriptContainer").add(prePanel);
的mypage.html
<td align="left" valign="top" id="scriptContainer"></td>
没有HTMLPANEL工作(显示提醒)
的mypage.html
<td align="left" valign="top"><script type="text/javascript" src="Scripts/pro.js"></script></td>
答案 0 :(得分:4)
我认为应该是其他方式。 HTMLPanel引用了javadocs
包含HTML的面板,可以将子窗口小部件附加到标识 该HTML中的元素。
应该包装您的容器而不是您的脚本。除非您完全有理由使用HTMLPanel来包装脚本,否则下面的示例有效。
HTMLPanel html = new HTMLPanel("<table><tr><td id='scriptContainer'></td></tr></table>");
RootPanel.get().add(html);
Element script = DOM.createElement("script");
DOM.setElementAttribute(script,"language","JavaScript");
DOM.setElementAttribute(script,"src","Scripts/pro.js");
DOM.appendChild(DOM.getElementById("scriptContainer"),script);