Ruby on Rails - Remove/Replace 字符串中的一些字符
Ruby on Rails - Remove/Replace some characters in string
我使用 nested_form
和 bootstrap 选项卡 。为了使 bootstrap tab 正常工作,我需要给每个选项卡一个 unique id,否则只有 4 个选项卡中的一个可以正常工作.
我已经能够获取每个嵌套表单输入的 id
并通过使用以下方法将其作为每个选项卡的 唯一 ID 提供:
- field_title = f.text_field :title
- id2 = field_title.match(/id="(?<id>[^"]*)"/)
在我的 bootstrap 选项卡中 我使用了这个解决方案:
.nav-tabs-custom
%ul.nav.nav-tabs
%li.active
%a{"data-toggle" => "tab", :href => "#tab_1_upl_#{id2}"} Upload
%li
%a{"data-toggle" => "tab", :href => "#tab_2_url_#{id2}"} link
%li
%a{"data-toggle" => "tab", :href => "#tab_3_lib_#{id2}"} image library
.tab-content
%div{id: "tab_1_upl_""#{id2}", class: " tab-pane active"}
image
%div{id: "tab_2_url_""#{id2}", class: " tab-pane"}
link
%div{id: "tab_3_lib_""#{id2}", class: " tab-pane"}
library
但现在的问题是,锚点的 id
就像:
id=" #tab_2_url_id="table_choices_attributes_1464338477560_title" "
如您所见这部分:="table_choices_attributes_1464338477560_title"
是这里的问题并且阻止 选项卡 正常工作。
如何只获取 id
中的 text 或仅替换 = "
?
我已经尝试使用 gsub
、tr
、tr!
并收到错误 undefined method
。
感谢您的帮助。
tr
或 gsub
不能与变量一起使用。所以我所做的是在字符串的外部使用它,如代码blow:
%div{id: "tab_1_upl_""#{id2}".tr('"=', ''), class: " tab-pane active"}
我使用 nested_form
和 bootstrap 选项卡 。为了使 bootstrap tab 正常工作,我需要给每个选项卡一个 unique id,否则只有 4 个选项卡中的一个可以正常工作.
我已经能够获取每个嵌套表单输入的 id
并通过使用以下方法将其作为每个选项卡的 唯一 ID 提供:
- field_title = f.text_field :title
- id2 = field_title.match(/id="(?<id>[^"]*)"/)
在我的 bootstrap 选项卡中 我使用了这个解决方案:
.nav-tabs-custom
%ul.nav.nav-tabs
%li.active
%a{"data-toggle" => "tab", :href => "#tab_1_upl_#{id2}"} Upload
%li
%a{"data-toggle" => "tab", :href => "#tab_2_url_#{id2}"} link
%li
%a{"data-toggle" => "tab", :href => "#tab_3_lib_#{id2}"} image library
.tab-content
%div{id: "tab_1_upl_""#{id2}", class: " tab-pane active"}
image
%div{id: "tab_2_url_""#{id2}", class: " tab-pane"}
link
%div{id: "tab_3_lib_""#{id2}", class: " tab-pane"}
library
但现在的问题是,锚点的 id
就像:
id=" #tab_2_url_id="table_choices_attributes_1464338477560_title" "
如您所见这部分:="table_choices_attributes_1464338477560_title"
是这里的问题并且阻止 选项卡 正常工作。
如何只获取 id
中的 text 或仅替换 = "
?
我已经尝试使用 gsub
、tr
、tr!
并收到错误 undefined method
。
感谢您的帮助。
tr
或 gsub
不能与变量一起使用。所以我所做的是在字符串的外部使用它,如代码blow:
%div{id: "tab_1_upl_""#{id2}".tr('"=', ''), class: " tab-pane active"}