我正在使用Facebox,当我尝试更改标签的内容时,它会给我原始的HTML但是渲染的表单,代码片段是:
jQuery('#facebox .content').html("<%= escape_javascript(render :partial => 'form')%>");
有人对此有任何想法吗?非常感谢。
答案 0 :(得分:0)
这很可能是因为HTML被转换为它们的实体表示,从而为您提供原始的html输出。我不是一个红宝石的家伙,但顾名思义,escape_javascript
函数可能会这样做。
下面的jQuery代码示例应该附加html而不是输出raw html输出:
$('#div').html($('#another_div').html());
答案 1 :(得分:0)
@leomayleomay:通过facebox渲染器我的意思是在屏幕上输出facebox的命令(有多种方法可以使用facebox)
但是,如果您只想更改当前显示的facebox的内容,则可以调用命令jQuery.facebox('some html');
如果这也不起作用,那么您可以给我们一个链接到您正在测试它的页面
答案 2 :(得分:0)
这可能已经过时但这对我有用了
jQuery.facebox('#{escape_javascript(render:partial =&gt;'index')}')。html()
该行末尾的.html()实际上就是这样做的。没有它,它正在渲染原始的HTML ... 我现在遇到的唯一问题是部分有一些javascript,但由于escape_javascript函数,它最有可能被渲染。我会继续挖掘。