scala - 如何动态设置电梯片段的参数?

标签 scala lift

有没有办法动态修改代码片段的参数?

例如如果我调用这个 URL

host:port/a_page?name=myname

我希望我的页面看起来像这样:

<div class="lift:surround?with=default;at=content">
   <div class="lift:comet?type=MySnippet;name=myname" >
      ...
   </div>
</div>

这可能吗?我尝试使用一些 javascript 来从 url 中提取参数并将其放入 divclass 属性中,但据我所知,由于脚本,这是行不通的将始终在提升框架发挥作用后执行。

提前致谢!非常感谢任何帮助。


我使用了提供的两个技巧来使其工作,就像 ajantis 提到的直接从代码片段读取参数是最简单的方法,但在 cometd 调用中不起作用。 Rogach 解决方案有效。

所以解决方案是:

<div class="lift:Ex.wrap">
  <div id="myid"></div>
</div>

def wrap = { 
val name = "lift:comet?type=MySnippet;name=" + S.param("name").openOr("...")            
"#myid" #> <div id="myid" class={name} ></div>
}

最佳答案

为什么不直接在片段处理中提取 http 参数?即

def render = {
   val name = S.param("name").openOr("...")
....
}

关于scala - 如何动态设置电梯片段的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11624388/

相关文章:

scala.collection.JavaConversions API : Where is the asScala method?

json - 如何无限制喷jsonFormat

具有默认方法与特征的 C# 接口(interface)

scala - 执行 Lift 项目时使用 SBT 出现内存不足错误

database - 有没有办法从 Lift 中的数据库模式生成模型代码?

scala - 如何在 Dispatch 中将正文附加到删除?

java - 用java提升框架

Scala Lift - 在 Linux 上找不到类路径

scala - 值 % 不是 scala.xml.NodeSeq 的成员

scala - 使用 elastic4s 从原始 JSON 创建索引