2010-12-02 40 views
0

在JavaScript文件,我拉断这个轨道变量从我的视图:在RoR中加载新的部分后,如何刷新js变量?

this.main_id = <%= images[0].id %>; 

然后,我使用Ajax的部分加载到页(有问题的视图)的至少一部分:

var url = '/images/thumbnails_newest/'+ this.main_id; 
new Ajax.Updater(this.scroller, url); 

现在js变量this.main_id已经改变了...我不知道如何访问部分的rails变量...我想更新这个值。

this.main_id = this.main_id in partial。

有没有办法做到这一点?谢谢。

回答

0

在泛音

<脚本的末尾添加这些线> this.main_id = <%=图像[0] .ID%>; < /脚本>

或定义某些JS方法,其可设置this.main_id的值,它需要一个paramerter将被image_id并在局部 结束调用它假定JS方法名set_main_id 然后调用它在当时的部分代码如下

<脚本> set_main_id(<%= images [0] .id%>); < /脚本>

实际上什么在客户端运行的脚本代码,客户端已经拥有了所有以前的内容时,新的内容来代码,那么这个js将更新前一个。希望它能帮助你。

+0

Thanks Usman,我不完全确定你的意思,但我通过将全局变量添加到我的application.js中解决了问题。咄!谢谢。 – mtay 2010-12-02 08:22:19