我在这里看到了一些类似的问题,但其中没有一个真正有助于解决我的问题。
我在页面上有一个表格和一个按钮需要在点击时重新渲染表格(使用不同的分页参数,排序等)。
我尝试了几种方法,并且我成功将值传递给带有嵌入式js路由器的控制器,但由于这些值通过ajax调用传递给后端,因此我无法重新呈现该表。
我的嵌入式路由器如下:
@helper.javascriptRouter("jsRoutes")(
routes.javascript.UserController.getUsers
)
我将从页面上调用它,例如: $ .ajax(jsRoutes.controllers.UserController.getUsers(3,true,“login”));
现在,最后但并非最不重要的是,我想用getUsers()调用的结果重新呈现表。
只需致电:
public Result getUsers(int size, boolean isAsc, String sortBy) {
......
Logger.info("Returning " + size + " users");
return Results.ok(usersPage.render(userDtos));
}
对我不起作用。
答案 0 :(得分:0)
有几种方法。
最简单的方法是使用播放控制器以HTML格式呈现表格,然后使用$('#mytable').load(...)将其拉到页面上。
更灵活的是让播放控制器在JSON format中返回数据,然后在浏览器中将其转换为HTML。这可以手动完成,使用客户端模板引擎(例如http://handlebarsjs.com/)或使用完整的javascript框架(如AngularJS或Ember.js)。