[解決済み] railsのcontent_tagヘルパーでhtml5のデータ属性を使用する最善の方法は?
2022-11-19 18:47:33
質問
もちろん問題は、rubyのシンボルはハイフンを好まないということです。ですから、このようなものは明らかにうまくいきません。
content_tag(:div, "Some Text", :id => "foo", :data-data_attr => some_variable)
シンボルではなく文字列を使うのも一つの方法です。
content_tag(:div, "Some Text", :id => "foo", 'data-data_attr' => some_variable)
補間することもできる
"<div id='foo' data-data_attr='#{some_variable}'>Some Text</div>".html_safe
私は後者の方が好きなのですが、どちらも少しグロい気がします。どなたか良い方法をご存知ですか?
どのように解決するには?
Rails 3.1では、組み込みのヘルパーが同梱されています。
http://api.rubyonrails.org/classes/ActionView/Helpers/TagHelper.html#method-i-tag
例
tag("div", :data => {:name => 'Stephen', :city_state => %w(Chicago IL)})
# => <div data-name="Stephen" data-city-state="["Chicago","IL"]" />
関連
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] Railsでグループとカウント
-
[解決済み] Rails 3.1 を使用して、「ページ固有」の JavaScript コードをどこに置くか?
-
[解決済み] ASP.NET MVCでHTML-5のdata-*属性でダッシュを使用する方法
-
[解決済み】CSSをインクルードするのに最適な方法とは?なぜ@importを使うのか?
-
[解決済み】Rails 3でlibフォルダからモジュール/クラスをロードする最良の方法?
-
[解決済み】Html5 data-* with asp.net mvc TextboxFor html attributes
-
[解決済み】Rails - コントローラの内部でヘルパーを使用する方法
-
[解決済み] パスワードを(平文ではなく)環境変数として設定ファイルに保存することは安全ですか?
-
[解決済み] HTML5の空のデータ属性は有効か?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】なぜRuby on Railsは、http://localhost:3000 の代わりに http://0.0.0.0:3000 を使用するのですか?
-
[解決済み] Railsサーバーがポートはすでに使用されていると言う、そのプロセスを殺すにはどうすればよいですか?
-
[解決済み] RailsのRootディレクトリのパス?
-
[解決済み] Rails のインストールに失敗する: activesupport には Ruby のバージョン >= 2.2.2 が必要です。
-
[解決済み] PG::ConnectionBad - サーバーに接続できませんでした。接続が拒否されました。
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] railsで':remote => true'はどのように動作するのでしょうか?
-
[解決済み] 属性を割り当てる場合、引数としてハッシュを渡す必要がある
-
[解決済み] 構文エラー "構文エラー、予期しない入力終了、keyword_endを期待 (SyntaxError)"
-
[解決済み] Rails - data-* 属性を持つ link_to ヘルパー [重複].