在速度宏生成的字符串的开头附加#

时间:2009-10-26 21:02:28

标签: jquery macros velocity

有没有人知道如何让一个速度宏在Octothorpe前面运行?

我有一个名为#macro(getUniqueID $id)

的速度宏

我想用它来发出一个使用CSS选择器的jQuery.find()使用的id,这意味着id需要由另一个octothorpe预先添加。

jquery.find("##getUniqueID('id')")  

不能工作

也不是

\#set($id = #getUniqueID('id'))
jquery.find(#$id)

也不是

\#set($id = '#getUniqueID("id")')
jquery.find(#$id) 

,也不

\#set($id = "#getUniqueID('id')")
jquery.find(#$id)

2 个答案:

答案 0 :(得分:0)

从我的实验中,以下转义应该对您有用:

<h2 id="#octothorpe">foo</h2>

$('#\\#octothorpe');
> [h2##octothorpe]

答案 1 :(得分:0)

如果你试图通过id找到一个div,你需要做jQuery.find('#'+ id)vs #id。不过,您可以使用\来转义第二个哈希符号。