加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何逃避Rails中的空白?

发布时间:2020-12-17 03:46:55 所属栏目:百科 来源:网络整理
导读:我知道rails会自动转义像’'这样的字符或'',但这对于彼此相邻的多个空格没有任何作用.我想逃避一切,包括空间. 我明白通常你不想使用 nbsp;并且你应该使用css代替.但是,我正在尝试接受用户输入并显示它,因此css不可行. 例如,我有用户输入:test.当我用%= @ u
我知道rails会自动转义像’<'这样的字符或'&',但这对于彼此相邻的多个空格没有任何作用.我想逃避一切,包括空间. 我明白通常你不想使用& nbsp;并且你应该使用css代替.但是,我正在尝试接受用户输入并显示它,因此css不可行. 例如,我有用户输入:test.当我用<%= @ user_input%>显示它时在视图中,额外的空格显示为单个空格(尽管它在源中正确显示).

有没有一个简单的方法来逃避空白?我应该只使用h @user_input然后替换所有空格?

解决方法

空格不会被删除.浏览器只是将多个空白字符解释为单个空格.

您可以将每个空间转换为& nbsp;如果你想:

<%= raw @user_input.gsub(/s/,"&nbsp;") %>

您也可以用空的< span class =“whitespace”>< / span>替换每个空格.标记,然后使用CSS来设置空白’字符’的样式,但是你喜欢.

最后,您也可以使用white-space:pre样式(下面的示例)使用only CSS执行此操作.

> http://jsfiddle.net/G3VnY/

编辑(回答评论中的后续行动)

<%= raw h("this      is      a    sample   &  with   ampersand.").gsub(/s/,"&nbsp;") %>

这逃脱了&作为& amp;在源代码中(并且将对其他HTML实体执行类似操作),然后执行“”到& nbsp;转换.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读