form_with和hotwire的刺激没有工作(Rails 7)

发布于 2025-02-09 17:16:08 字数 1086 浏览 1 评论 0原文

选择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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

流年已逝 2025-02-16 17:16:08

没关系,我发现了问题:

解决方案。

&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"} }) %>

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文