2017-03-15 18 views
0

比方说,我有一个跨部门,如“<%=...%>”在HTML中的含义是什么? (更新)和嵌入的Ruby

<span class="foodtype" id="food<%=category%>"> 

去除空白,我想,在HTML中,从类别(如水果或蔬菜删除空白 - > FruitOrVegetable),以便该ID不包含空格。我怎样才能做到这一点?

另外,有人可以解释什么<%=%>是指?

+1

表达标签:https://en.wikipedia.org/wiki/ERuby – orde

+0

这意味着什么,以HTML,但可能更多的要使用的Ruby的Rails的服务器很多..它是一个模板指令红宝石 – Soren

+0

太好了,谢谢!因为这是嵌入式ruby,所以除去空白区怎么办? – user7518095

回答

0

<%=%>告诉erb文件渲染/打印结果,而不仅仅是执行它。

<%>只是执行ruby并不打印结果。例子可能是设置一个变量或创建一个循环。

下面是一些文档:http://apidock.com/ruby/ERB

有很多,你可以用它来操纵红宝石,GSUB字符串或删除会为这项工作做得很好,因为空白将是整个字符串方法:

https://ruby-doc.org/core-2.3.1/String.html#method-i-delete

最好在将数据传递给视图之前完成操作。如果您使用的是Rails,您可能需要考虑删除视图助手中的空格。

0

这也可能是最好写这样的 -

<span class="food" data-category="fruit" id="apple"></span> 

这提高了可读性。这种方法意味着您可以避免必须处理空间等问题。只需关注使用数据标签来定义跨度。

另外你对<%=%>的问题,它们是由@orde指出的表达式标记,当代码被编译时,它们将被剥离出来,并且“category”变量的值将被注入到id中标签。

希望这会有所帮助! :) 祝你好运!

0
category = 'Fruit or Vegetable' 

category.gsub(' ','') #=> 'FruitsorVegetables' 

category.titleize.gsub(' ','') #=> 'FruitsOrVegetables' 

因此,这可以达到目的

<span class="foodtype" id="food<%=category.gsub(' ','')%>"> 

<span class="foodtype" id="food<%=category.titleize.gsub(' ','')%>"> 
+0

不要忘记那里的代码格式。 '{}'按钮通常只需单击即可修复所选块。 – tadman

0

<%=%>在html.erb文件用来打印红宝石代码中的html文件。

<span class="foodtype" id="food<%=category.gsub(' ','')%>"> 
相关问题