javascript - 我可以为 onclick 事件定义一个 Ruby 函数吗?

标签 javascript ruby-on-rails

我可以在单选按钮的 onclick 事件中定义一些 Ruby 函数(JavaScript 除外)吗?

例如,我可以使用这样的东西吗?

<%= radio_button(count, voting.vote_count, :onclick => "if voting.nominees.eql?(selected.nominees) voting.update_attribute('vote_count',voting.vote_count+1 )")

最佳答案

在这种情况下,Ruby 在服务器上运行,而 JavaScript 在浏览器上运行。

点击发生时,Ruby 程序已经运行完毕。

让 Ruby 函数运行的唯一方法是向服务器发出新的 HTTP 请求。 XMLHttpRequest object 允许您从 JavaScript 执行此操作。要在没有 JavaScript 的情况下实现它,您需要使用一些技巧。

<form action="..." method="post">
  <div>
    <button type="submit"> 
      <img src="looks-like-a-radio-button.png" alt="vote">
    </button>
    <input type="hidden" name="vote" value="whatever">
  </div>
</form>

关于javascript - 我可以为 onclick 事件定义一个 Ruby 函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1212076/

相关文章:

ruby-on-rails - 用于 Ruby on Rails 的 Sendgrid API

ruby-on-rails - 如何避免 activesupport 中的循环参数引用警告

ruby-on-rails - 了解 Ruby on Rails 中的类变量和方法

javascript - 设置为 false 后重新激活 jquery click 方法

javascript - Operator Instanceof 在 Console.log 串联中给出不同的结果

Javascript:如何将每n个字符转换为数组中的项目?

javascript - 如何检测何时在输入字段中动态插入文本

ruby-on-rails - 范围变干?

ruby-on-rails - 无法停止进程,在 tmp/pids/thin.8080.pid (Thin::PidFileNotFound) 中找不到 PID

javascript - 警报不适用于 vuejs