我有一个Javascript,我想嵌入这样的超链接:
<a href="javascript:function() {...}();">
我创建了一个名为_bookmarklet.html.erb的部分,它生成了javascript,包括动态生成的链接,指向app / assets中的资源。它不能是静态的,因为它创建的url指向当前服务器上的资产,这需要是绝对的,因为在安装它之后,bookmarklet可以在不同的Web主机上执行。
我的模板如下所示:
<a href="<%= render :partial => 'pages/bookmarklet' %>"
我遇到的问题是javascript中的“(双引号”)。是否存在逃避报价的机制?我怎样才能正确嵌入?在Rails中公开书签的正确方法是什么?
答案 0 :(得分:1)
你有几个选择。您可以使用link_to
帮助程序为您执行转义:
link_to "Bookmarklet!", render(:partial => 'pages/bookmarklet')
或manually escaping节点的属性:
<a href="<%=h render :partial => 'pages/bookmarklet' %>"
答案 1 :(得分:0)