2011-06-23 34 views
23

我正在使用LiftWeb,XML和绑定方法。XML文字属性值的变量

这工作:

scala> val id = "test"      
id: java.lang.String = test 

scala> <a href={id}>link</a>    
res4: scala.xml.Elem = <a href="test">link</a> 

但是如果我想<a href="page?param=test">link</a>什么?

这不起作用:

scala> <a href="page?param={id}">link</a> 
res5: scala.xml.Elem = <a href="page?param={id}">link</a> 

回答

28

你把整个事情的括号内:

<a href={ "page?param=" + id }>link</a> 
+0

啊,当然。谢谢。 – aioobe

1

答案把它所有在大括号是正确的。但不要忘记,你需要在花括号中有一个字符串!

所以,你必须写类似(不是你的例子,很明显)

<edge label={name} weight={weight.toString} /> 

如果你来自哪个为你转换类型的一种语言,它可以花费你挠头的几分钟,你之前记住有什么不对,因为SBT没有提供错误信息,只是强调了它。

0

使用这个,你不会错过的报价:<a href={s"page?param=$Id"}>link</a>