我有几个面板要在ModalWindow中显示。在这些面板的html文件中,我体内有脚本标签,例如用于SyntaxHighlighter或JW Player。如果将面板嵌入到其自己的页面中,则这些标签将起作用。但是,当面板嵌入到ModalWindow中时,它们不起作用。

面板(html文件)的示例,该面板显示应该由SyntaxHighlighter处理的文本(在body标签中):

<wicket:panel>
  <pre wicket:id="content"></pre>
  <script type="text/javascript">
    SyntaxHighlighter.all();
  </script>
 </wicket:panel>


我已经尝试了许多不同的方法,例如

super.show(target);
target.appendJavaScript("SyntaxHighlighter.all();")


在ModalWindow的“ show()”方法中。我也玩过“ renderOnDomReadyJavascript”,“ renderOnLoadJavascript”等,但是我想它还是必须嵌入到body-tag中……我只是无法使其正常工作。

如果将面板嵌入页面中并将该页面放入ModalWindow而不是面板中,则可以正常工作,但是我想避免这种情况,因为这不是必需的,并且会导致滚动问题。感谢您的提示!

编辑:快速入门示例显示问题:Download

最佳答案

in this other answer说明了此问题的解决方案。必须使用方法Highlight()代替all()。

10-02 13:33