为什么它给我原始的HTML?

时间:2010-06-13 08:43:29

标签: jquery ruby-on-rails

我正在使用Facebox,当我尝试更改标签的内容时,它会给我原始的HTML但是渲染的表单,代码片段是:

jQuery('#facebox .content').html("<%= escape_javascript(render :partial => 'form')%>");

有人对此有任何想法吗?非常感谢。

3 个答案:

答案 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函数,它最有可能被渲染。我会继续挖掘。