html - 如何根据 Ruby on Rails 中的表单选择创建文本框警报/悬停弹出文本?
问题描述
到目前为止,我有这段代码,form.html.erb
但它并没有按照我想要的方式工作。它只显示占位符值。我想要做的是:当用户选择 A 时,我希望选择 A 旁边的文本框显示一些文本以提供有关该选择的更多详细信息。
<%= form.label :title %><br>
<%= form.select :title, ['A', 'B','C','D' ]%>
<%= form.text_field : Content, class:"form-control", placeholder:'text here', style:"#{'display: This is A' if form.object.title == 'A'}" %>
解决方案
Rails Form Helpers 不会代表你做所有的事情,如果你想在表单周围做一些魔法,你必须放一些 javascript。
在您的情况下,如果您只想显示一个简单的警报以显示选定的选项信息,您可以这样做:
<% ruby_var = "this is ruby variable"; options = {
"A": "I like ice cream and I like books",
"B": "I like pizza and I do not like books",
"C": ruby_var
}.to_json
%>
<%= form.select(:title, ['A', 'B','C','D' ], {}, :onChange =>"javascript: alert(#{options}[this.value]);")%>
如果你想要更多,写你自己的js来操作dom元素
推荐阅读
- python - Python 中的数据类:如何处理复杂类型作为参数?
- java - MongoDB Java 驱动程序 4.0+ 会重试 DBCursor.next() 吗?
- c# - 在 Hangfire 仪表板中显示日志?
- ruby-on-rails - Ruby on Rails 教程中这个失败的测试是怎么回事
- javascript - v-toolbar-title 内的字体大小未更新
- r - 在 Shiny 应用程序中更新数据集(稍后使用)
- python-3.x - 使用部分合并的字段设置 Firestore 文档 - Firestore 限制
- neo4j - 基于条件的2个节点之间的最佳路径
- android - Xamarin.Android:在另一个 DialogFragment 之后显示 DialogFragment 时出现“错误膨胀类片段”异常
- android - Android蓝牙发现广播接收器不工作