带有jquery的rails 3中的prototype_helpers - 我还应该使用jrails插件吗?或者现在有不同的方式吗?
我刚刚开始掌握 Rails 3。我最新的障碍与我在 js.rjs 文件中使用的原型助手有关。在我的一些 Rails 2 应用程序中,我放弃了原型,转而使用 jquery,这就是我在这里所做的。获取帮助程序,例如 page.replace
& page.replace_html
回来,然后我使用了 jrails 插件,它复制了功能,但使用 jquery 而不是原型(或者至少这是我的理解)。
我在我的玩具rails 3应用程序中使用jquery而不是原型,并且遇到了同样的问题:page.replace助手不起作用:
我在update.js.rjs
中有这个代码
page.alert "posted"
page.replace "tweets", :partial => "twitter/tweets"
:导致第 2 行出现此错误(警报运行正常):
RJS error: TypeError: Element.replace is not a function
我只需要再次安装 jrails 插件吗?或者现在有不同的解决方案吗?
感谢任何想法 - max
编辑 - 当我将代码从 js.rjs 文件移到我的控制器中时,我遇到了同样的问题,如下所示:
respond_to do |format|
format.js do
render :update do |page|
page.alert "posted"
page.replace "tweets", :partial => "twitter/tweets"
end
end
end
编辑 - 最后,由于缺少其他任何内容,我刚刚安装了 jrails gem 和现在看起来还好。
I'm just getting to grips with rails 3. My latest speedbump is to do with the prototype helpers i use in js.rjs files. In some of my rails 2 apps, i ditched prototype in favour of jquery, and that's what i've done here. To get the helpers, eg page.replace
& page.replace_html
back, i then used the jrails plugin which replicated the functionality but using jquery instead of prototype (or at least that was my understanding of it).
I'm using jquery instead of prototype in my toy rails 3 app and have hit the same problem: the page.replace helper doesn't work:
I have this code in update.js.rjs
:
page.alert "posted"
page.replace "tweets", :partial => "twitter/tweets"
which causes this error from line 2 (the alert runs fine):
RJS error: TypeError: Element.replace is not a function
Do i just need to install the jrails plugin again? Or is there a different solution these days?
grateful for any thoughts - max
EDIT - i get the same problem when i move the code from a js.rjs file into my controller, like so:
respond_to do |format|
format.js do
render :update do |page|
page.alert "posted"
page.replace "tweets", :partial => "twitter/tweets"
end
end
end
EDIT - in the end, for lack of anything else, i just installed the jrails gem and it seems fine now.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要使用 jquery-rails gem。这将通过提供 Rails.js 文件将原型助手替换为 jquery 助手。添加
到您的 gemfile,
以安装 gem 并生成正确的文件。
You'll want to use the jquery-rails gem. This will replace prototype helpers with jquery helpers by providing a rails.js file. Add
to your gemfile,
to install the gem and generate the correct files.