小编new*_*ert的帖子

如何在 Rails 7 的表单选择中包含类和数据属性?

在我的 Rails 7 应用程序中,我使用 Stimulus,需要data向表单添加属性select以将其链接到 JavaScript 控制器。我还尝试使用class.

这是表单选择元素:

<%= f.select(:repeat, Batch.repeats, {class: "class_name"}, { data: { batch_repeat_target: "input", action: "change->batch-repeat#toggle" }}) %>
Run Code Online (Sandbox Code Playgroud)

上面的代码导致data属性被应用到选择字段,但保留了classout。

我还尝试翻转classdata属性,如下:

<%= f.select(:repeat, Batch.repeats, { data: { batch_repeat_target: "input", action: "change->batch-repeat#toggle" }}, { class: "class_name" }) %>
Run Code Online (Sandbox Code Playgroud)

结果与第一种方法相反:这一次,field按类设置样式,但数据属性不与select元素关联。

根据这个问题,我意识到:

selecthelper 采用两个选项哈希,一个用于 select,第二个用于 html 选项。因此,您所需要做的就是在项目列表之后提供默认的空选项作为第一个参数,然后将您的类添加到 html_options.

从那里开始,我认为我需要在第一个选项哈希中包含 theclass和 thedata属性,并将第二个选项哈希保留为空,如下所示:

<%= f.select(:repeat, Batch.repeats, …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails drop-down-menu stimulusjs

1
推荐指数
1
解决办法
1249
查看次数

标签 统计

drop-down-menu ×1

ruby-on-rails ×1

stimulusjs ×1