iframe中的Scala Play框架网址无效

时间:2017-10-24 20:49:39

标签: java scala iframe playframework playframework-2.0

我想在我的scala播放视图中显示此iframe;

<iframe src="http://localhost:9020/index.html#/group/sectiona/sectionb">Loading...</iframe>

如果我对此网址进行硬编码,则可行。但我希望它是动态的。我试过了;

  1. <iframe src="http://localhost:9020/index.html#/group/{{ 'http:\//localhost:9020\/#\/group\/' + myclass.section + '\/' + myclassb.section }}/testtopic">Loading...</iframe>
  2. <iframe src="http://localhost:9020/index.html#/group/{{myclass.section}}/sectionb">Loading...</iframe>
  3. <iframe class="graphiframe" src="{{ 'http:\//hello' + myclass.section + 'world'}}" frameborder="0" style="overflow:hidden" height="100%" width="100%">Loading...</iframe>
  4. <iframe class="graphiframe" src="{{ 'http://hello' + myclass.section + 'world'}}" frameborder="0" style="overflow:hidden" height="100%" width="100%">Loading...</iframe>
  5. 等。

    这些都不起作用。在4和5中,当我检查元素时,整个src从iframe消失了,我得到了一个分别带有错误消息Action not found. For request 'GET /%7B%7B%20'http:///hello'%20+%20myclass.section%20+%20'world'%7D%7D'Action not found. For request 'GET /%7B%7B%20'http://hello'%20+%20myclass.section%20+%20'world'%7D%7D'的iframe。我在application.conf中进行了更改,如play.filters.headers.frameOptions = null。它使用Play 2.4.0。

    我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

你需要“魔术'@'字符”:https://www.playframework.com/documentation/2.6.x/ScalaTemplates

所以

<iframe src="http://localhost:9020/index.html#/group/{{myclass.section}}/sectionb">Loading...</iframe>

必须是

<iframe src="http://localhost:9020/index.html#/group/@myclass.section/sectionb">Loading...</iframe>

<iframe src="http://localhost:9020/index.html#/group/@{myclass.section}/sectionb">Loading...</iframe>