form_with和hotwire的刺激没有工作(Rails 7)
选择form_with,刺激和热线的字段,以及Rails 7,
一旦我更改选择值,我想在控制台中看到一条消息。我正在使用Hotwire和Rails 7,但它不起作用。
代码。
- _form.html.ERB
<%= form_with model: [@framework, @framework.criteria.build] do |form| %>
<div>
<%= form.label :criteria_name %>
<%= form.text_field :criteria_name, class: "rounded-md border border-pbgray-medium w-full mb-2" %>
</div>
<div data-controller="answer">
<div>
<%= form.label :type_answer %>
<%= form.select :type_answer, [["Multiple Choice", 1], ["Single choice", 2], ["Text-box", 3]], {data: { action: "change->answer#my_method"}} %>
</div>
</div>
<p data-action="click->answer#my_method">Click me!!</p>
<div>
<%= form.submit %>
</div>
<% end %>
- 答案_controller.js
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
my_method() {
console.log("Hello new World");
}
}
Select field with form_with, Stimulus and Hotwire, and Rails 7
I want to see a message in the console once I change the select value. I'm using Hotwire and Rails 7 but it doesn't work.
Code.
- _form.html.erb
<%= form_with model: [@framework, @framework.criteria.build] do |form| %>
<div>
<%= form.label :criteria_name %>
<%= form.text_field :criteria_name, class: "rounded-md border border-pbgray-medium w-full mb-2" %>
</div>
<div data-controller="answer">
<div>
<%= form.label :type_answer %>
<%= form.select :type_answer, [["Multiple Choice", 1], ["Single choice", 2], ["Text-box", 3]], {data: { action: "change->answer#my_method"}} %>
</div>
</div>
<p data-action="click->answer#my_method">Click me!!</p>
<div>
<%= form.submit %>
</div>
<% end %>
- answer_controller.js
import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
my_method() {
console.log("Hello new World");
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
没关系,我发现了问题:
解决方案。
&lt;%= form.Select(:type_answer,[[“多重选择”,1],[“ text-box”,2],{},{:class =&gt; :data =&gt; {:action =&gt;
Nevermind, I found the issue:
Solution.
<%= form.select(:type_answer, [["Multiple choice", 1], ["Text-box", 2]], {}, { :class => 'some-class', :data => {:action => "click->answer#my_method"} }) %>