Java 在模板内定义和编辑变量

Java 在模板内定义和编辑变量,java,scala,playframework,Java,Scala,Playframework,在我的play应用程序中,我试图让用户有机会编辑他从表格中选择的特定项目,方法是单击该项目所在表格行中的按钮 更准确地说,用户将编辑已报名参加考试的学生。单击要编辑的考试后,将打开一个模式。在模式中,表格将显示所有可用的学生,并为已注册的学生选中复选框 我唯一的问题是:如何通过用户想要编辑的考试id?就我所研究的而言,我不能在模板内部定义和编辑变量。在Angular中,我只是修改范围中的一个变量 正确的方法是什么?将初始化数据从后端移动到前端的一般原则是使用模板引擎将其注入标记的某个位置。在您的

在我的play应用程序中,我试图让用户有机会编辑他从表格中选择的特定项目,方法是单击该项目所在表格行中的按钮

更准确地说,用户将编辑已报名参加考试的学生。单击要编辑的考试后,将打开一个模式。在模式中,表格将显示所有可用的学生,并为已注册的学生选中复选框

我唯一的问题是:如何通过用户想要编辑的考试id?就我所研究的而言,我不能在模板内部定义和编辑变量。在Angular中,我只是修改范围中的一个变量


正确的方法是什么?

将初始化数据从后端移动到前端的一般原则是使用模板引擎将其注入标记的某个位置。在您的例子中,无论您在模板中使用什么循环来呈现表行,您只需将ID放入表中它自己的单元格、类或ID属性中,或者最合适的是,放入表行上的数据属性中。我想说的是,每一种选择几乎都是等价的,主要是在美学上有所不同

然后,在click处理程序中,您只需在事件目标上使用相对选择器将ID拉入脚本中,无论您将其存放在何处


另一种方法是在前端呈现您的表,通过API从后端以单页应用程序的风格提取这些信息。然后,ID和数据之间的关联在其渲染之前就存在于模型中。对于这一个例子来说,这可能有些过分,但是如果你有一打这样的屏幕,那么你就有了丰富的交互性,我认为这是一种更具伸缩性的方法。

表格行中的那个按钮,你是如何触发模态来显示的?onclick=xxx,jQuery单击事件监听器,现在只是按钮标记中的数据切换=modal data target=myModal。但如果这更容易的话,我愿意用不同的方式来做。顺便说一句,这个模式是一个标准的引导模式。我确实意识到我可以通过将用户重定向到具有新路由和examId作为参数的新页面来解决整个问题,但我希望在模式中的同一页面上执行此操作。检查此帖子上的评论,您可以更新变量