javascript - 带有插值参数的rails form_for onsubmit未命中js函数

标签 javascript ruby-on-rails

我有一个 Rails form_for html 元素。该表单有一个调用 JavaScript 函数的 onsubmit 属性。 onsubmit 工作正常,但是当我添加额外的参数时,js 函数不再受到影响。

带有附加参数的 form_for 生成的 HTML 是正确的,但由于某种原因,未调用 js 函数。如有任何帮助,我们将不胜感激!

This works...

<%= form_for :item, html: { onsubmit: "saveItem(event)" } %>
  form content...
<% end %>

function saveItem(event) {
  js function content...
}

--------------------------------------------------------------------------------

This does not...

<%= form_for :item, html: { onsubmit: "saveItem(event, #{method}, #{url})" } %>
  form content...
<% end %>

function saveItem(event, method, url) {
  js function content...
}

最佳答案

检查生成的 html 并确保 saveItem 的参数被正确引用。试试<%= form_for :item, html: { onsubmit: "saveItem(event, '#{j method}', '#{j url}')" } %> - 单引号字符串,并将它们传递给 j辅助方法 - 确保它们被正确转义以供 JS 代码使用。

关于javascript - 带有插值参数的rails form_for onsubmit未命中js函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56230198/

相关文章:

使用星号隐藏电子邮件的 Javascript 函数?

javascript - Galleria JS 无法在生产环境中使用 Rails 管道

ruby-on-rails - Formtastic::FormBuilder的未定义方法 'actions'

ruby-on-rails - 如何将 ruby​​ 代码包含到 content_tag 中

javascript - 如何为 JScript 中的按钮分配操作?

javascript - 在 React 中显示每个动态 div 的组件

ruby-on-rails - Rails - 在本地主机上创建内部服务器错误 (500)

ruby-on-rails - 出错后保持填写表单字段 (RoR)

javascript - 替换功能有问题

javascript - 根据 slider 滑翔机 js 中的事件 li 值更改 css 值