如何在通过Javascript重定向时保持StatefulSnippet var值
How to keep StatefulSnippet var values when redirecting through Javascript
我有一个图像链接,当我点击它时,我想对一些类变量进行一些更改,然后重定向到其他页面并使用这些值。
这是我的代码,我使用StatefulSnippet
class MySnippet extends StatefulSnippet {
var selectedStudent: Student=null
def students =
".tabla" #> studentsList.map { s =>
"#id" #> s.Id &
"#name" #> s.Name &
"#surname" #> s.Surname &
"#buttonAcademic [src]" #> tickUrl &
".clickableAcademic [onclick]" #> SHtml.onEvent(onClickCallbackAcademic(s))
}
def onClickCallbackAcademic(student: Student,xhtml:NodeSeq)(s: String): JsCmd = {
//makes some stuff to student
selectedStudent = student
JsCmds.RedirectTo("/Academic")
}
}
但当我重定向到另一个页面时,我的var selectedStudent为null,我尝试了调试,selectedStudents有正确的值,但当重定向时它变为null。有什么想法吗?
StatefulSnippet使用HTML表单和隐藏参数将信息(应该使用哪个代码段实例)传递到Lift的服务器端。
因此JS重定向将不起作用,因为它不会传递这些信息。
以下是我脑海中出现的一些可能在这种情况下有效的解决方案:
-
在外包装一个表单,并在onClickCallbackAcademic中通过JS提交。
-
不要使用StatefulSnippet,而是使用SessionVar来存储您选择的学生,这样您就可以在不提交表单的情况下使用它。
相关文章:
- 控制台返回var不是't定义,但它是
- 从var向代码隐藏函数传递值
- 如何通过引用var Using DataTables来进行分页或排序
- jQuery语法添加了var
- 如何将具有文本类型值的var放入jQuery函数中
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 当var==0时,我如何显示一个警报
- javascript中对象构造函数中的var属性与this.properties
- 函数中this和var之间的区别
- JavaScript-的含义:var DndUpload=函数(inputElem){};
- Understanding Javascript scope with "var that = this&qu
- 如何使用javascript var引用Mongo DB集合's字段
- var w = q||问2;这个表达式是什么意思
- 为什么JavaScript抛出'未捕获的ReferenceError:var未定义'定义var时
- 在jquery函数内部设置来自jquery函数的var;t运行
- 确定var是否是javascript中的elementFinder对象的方法是什么
- 如何使用var名称调用JSON数据
- '这'在使用之前分配给了一个var
- 更改json/javascript对象var名称或从数字var中检索值
- 如何在通过Javascript重定向时保持StatefulSnippet var值