问题标签 [ujs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 渲染(:更新)的用例是什么
使用 Rails 控制器,究竟是render (:update)
为了什么?
是专门用于定义 RJS 内联还是有更多用途?
ajax - Rails 3 form_for :remote => true 不通过 AJAX 提交
我正在尝试通过 AJAX 提交表单。我认为这应该是一件简单的事情,但它坚持以常规形式发布......
更新
这个表单存在于另一个表单中,它不是 AJAX 化的,还是相关的?这会导致问题吗?
我得到的错误
LinkWidgetsController#create 中的参数错误
[/Users/victorstan/Sites/portrait/app/views, /Users/victorstan/.rvm/gems/ruby-1.9.2-p290@portrait/gems/devise-1.5.1/ 中没有 LinkWidgetsController 的默认布局应用程序/视图]
相关代码:
路线
控制器
部分的
ajax - 当我的 AJAX 部分加载到 rails 3.1 中时,如何隐藏搜索按钮并显示微调器?
我有一个从 Amazon-ecs API(搜索书籍)返回结果的部分。返回值大约需要 2.5 秒,所以我想添加一个微调器(最好隐藏搜索按钮),但我很难让它工作。
我已经有 javascript 用结果刷新部分。我只想让按钮给我一个微调器(并隐藏搜索按钮),直到部分完成重新加载。
这是我的主视图 (index.html.erb),它呈现部分搜索结果,每个搜索结果都临时添加为 AmazonItems 中的对象:
我唯一的 JS 代码在 update.js.erb 文件中,如下所示:
我确信这很容易,但我无法让它工作。谢谢!
编辑:我的部分“_amazon_returned.html.erb”看起来像
ruby-on-rails - link_to 中的“数据类型”参数
是否有任何捷径:
我认为:type=>:html
会起作用,就像:remote=>true
转换为data-remote='true'
,但不受支持。
jquery - What's the best UJS way of refactoring link_to_function?
I have the following interface for a baseball-draft oriented hobby project of mine that lets a team owner build a set of criteria to rank players on:
Clicking the attributes will add that attribute to the list, give it an importance factor and a sort direction.
In Rails 2 and Rails 3 (with the prototype helpers) - I did this by having the following:
Where "add_ranking_attribute_link(attributename)" is:
I'm converting this to jquery, but I'm not sure the best way to do it - mainly because of the loop involved. I can do this:
Which is basically just replacing the link_to_function. But is there a better way? The ujs way would have me doing something like:
But that doesn't work out outside the loop because of the attributename handling. I honestly get a bit lost mixing in erb and javascript - and don't know a good way of passing attributename as a param to the javascript function to insert back into the render partial without a fragile cascade of debugging erb and javascript syntax errors, both of which are frustrating to debug.
There has to be a better way though (and I'm sure there's a better interface for this, suggestions welcome!).
javascript - Rails3 UJS 更新不显示
我无法获得 UJS 调用来更新页面显示。我想在选择框更改时更新 div 的值(我已经到处搜索但无济于事)。
我像这样设置更改功能(我正在使用Haml):
我的控制器具有以下内容:
我的观点有(我正在使用 simple_form):
当 ajax 调用完成时,我检查 DOM 并且值在那里;即,在控制台中:
显示“亚当比尔博”,但该值未显示在我的页面上。
我正在运行 Rails 3.0.9 和 gem jquery-rails 1.0.9;任何帮助找出我忽略的东西都非常感谢!谢谢。
已解决-@iWasRobbed 下面的解决方案有效。但是,基本问题是在更新“#timesheet_worker_name”时使用 val() 而不是 text(),因此我的原始方法也适用于该更改。
javascript - 带 json 的铁路 UJS
在我对提交的表单的 javascript 响应中data-remote=true
,我有这一行:
但是传递给的 argmy_function
填充了"
,我的 javascript 无法将其解释为对象。我假设我需要以<%=@object.to_json%>
某种方式逃脱,但我不知道要使用哪个 javascript 函数。有任何想法吗?
ruby-on-rails - Rails 和 ajax 更新单页记录
我正在尝试在 Rails 中创建一个编辑页面,它有两个面板,顶部面板有一个包含所有项目的选择框和一个编辑按钮。选择项目并按下编辑按钮时,第二个面板中的编辑表格应在该项目更新的情况下填充。
不幸的是,我似乎无法获得顶部面板右侧的表单模式或支持方法。
我知道如何让它工作,在一个页面上列出所有项目,然后单击一个 link_to edit 将您带到编辑页面,但是将所有项目都放在一个页面上,上面描述的两个面板让我无法理解。
我的第一个表格看起来有点像这样:
第一个问题是它不喜欢在不提供 id 参数的情况下进行“编辑”的表单,它试图告诉我“project_editor”上的“编辑”路径不存在,它确实存在。
我不禁觉得我让这件事变得比它真正需要的复杂得多,但我对铁轨的有限接触让我碰到了一堵砖墙。
任何指向任何可能帮助我使这种模式工作的 doco 的指针都将非常感激。
jquery - 使用 Ajax 的 Rails Kaminari 分页
我在使用 Ajax 分页时遇到问题。我的视图代码寻找分页看起来像
但是,AJAX 调用失败并显示错误状态代码,Web Inspector 显示如下
服务器日志显示
有趣的是,如果我向同一页面添加超链接,例如
该链接看起来与 Kaminari 生成的链接完全相同,并且 Ajax 调用成功,没有任何问题。更有趣的是,如果我将生成的分页链接从
至
这与 AJAX 无关,该链接再次正常工作。
在 Kaminari 渲染链接之前发生的 jquery-ujs 魔术是否与使用 ActionView Extensions 和 ActionView Context 生成分页链接标签有关?非常感谢您对此问题的任何帮助!
ruby-on-rails - UJS - 我将 js.erb 放在哪里?
我的文章可以出现在多个站点上,还有一个带有标题、正文等的文章模型和一个带有 site_id、site_name 等的站点模型,我有一个 article_site_permission 模型,带有 article_id、site_id 和可见,可以是 true 或错误的。
在我的文章编辑页面上,我做了一个 button_to:
这有效 - 它将权限更改为 false。我可以显示相反的显示按钮。
现在我想通过添加:remote => true
到按钮链接来刷新其中包含按钮的 div。但是我在哪里放我的javascript?
它是否在 article_site_permission 视图中 - 即使我正在查看文章本身的视图?它被称为 update.js.erb 吗?
谢谢你的帮助。
为清楚起见更新。
我的按钮在文章/编辑页面上。该按钮更新 article_site_permissions。我想返回文章/编辑并刷新其中包含按钮的 div。
我必须为 article_site_permissions 编辑更新控制器,但是我在哪里放 js 来刷新 div?