HTMLPanel中的Javascript

时间:2011-08-14 14:13:46

标签: javascript html gwt panel

我想在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>

1 个答案:

答案 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);