我想使用Java Play Framework來執行一些AJAX風格的數據檢索,並遇到了'route'腳本語法的問題。JavaScript中的Java Play框架Groovy腳本
問題是在下面的代碼@{Movies.show("'+movie.id+'")}
被編譯爲url/etc/+movie.id+
而不是url/etc/1
。
<script type="text/javascript">
function showMoreMovies()
{
$.getJSON('@{Movies.jsonAllMovies()}', function(movies) {
var items = [];
$.each(movies, function(i, movie)
{
var div_data = '<div class="movie">'+
'<h2 class="movie-title"><a href="@{Movies.show("'+movie.id+'")}">'+movie.title+'</a></h2>'+
'<div class="release-date">' + movie.releasedString + '</div>'+
'<div class="comments">| comments: ' + movie.commentCount + '</div>'+
'</div>';
$(div_data).appendTo("#movie_results");
});
});
}
</script>
一個解決辦法是硬編碼的路線網址:
<a href="url/etc/'+movie.id+'">
其作品,但你失去了自動路由的好處。
是否有其他人遇到過這個問題或找到了解決此問題的新方法?
或者你可以一個URL字段添加到其從'@返回你的電影的JSON {Movies.jsonAllMovies()}'叫 –
是它的工作原理也! – mandubian