如何在Rails表单标签中获取onclick属性?

时间:2016-04-14 19:30:36

标签: javascript html ruby-on-rails

我正在努力做一些如此简单的事情,但我无法让它发挥作用。

radio_button_tag(:hw_choice, "Completed", onclick: {alert("I work!"); } )

我需要使用radio_button_tag,而我想做的是在单选按钮改变时做一些js。我已经尝试了上面的很多种选项:{on_click :,它们都没有生成onclick html属性,所以这应该很简单,html / rails helper问题。

我错过了什么?

2 个答案:

答案 0 :(得分:3)

radio_button_tag有四个参数,第三个参数是checked,第四个参数是您想要的HTML选项。

http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-radio_button_tag

添加truefalse作为第三个参数。将JavaScript括在引号中。此外,您不需要围绕参数的括号。

radio_button_tag :hw_choice, "Completed", false, onclick: "window.alert('I work!');"

答案 1 :(得分:3)

this answer类似,一个选项是使用javascript为该按钮添加一个事件监听器。

button = document.getElementById("id")
button.addEventListener('click', function(){
    //do stuff here
}, false);

(此解决方案将在前端而不是后端实施,这可能并不理想)