仅截断""从下拉列表中选择的值

时间:2015-07-31 07:52:59

标签: jquery ruby-on-rails

我希望截断我在铁轨中的下拉列表的选定值。

此刻我正在这样截断。它是我li的{​​{1}}元素之一。

ul

这是做什么的,它也会截断下拉列表的选项。

<% @style.each do |ss| %>
      <li  role="presentation" class="testli" value="<%= ss.id %>"><a role="menuitem" tabindex="-1" href="javascript:void(0);"><%= ss.name + " - " + truncate(ss.description, length: 20, escape: false) %></a>
      </li>
<% end %>

此CSS属性不适用于下拉列表,但适用于 text-overflow: ellipsis;

请帮忙。

1 个答案:

答案 0 :(得分:0)

你选择的是什么意思?这是一个适用于某个ss的类吗?或某种状态ss

如果是这种情况,你可以做一个像这样的案例

<% @style.each do |ss| %>
  <% if ss.selected %>
    <li  role="presentation" class="testli" value="<%= ss.id %>"><a role="menuitem" tabindex="-1" href="javascript:void(0);"><%= ss.name + " - " + truncate(ss.description, length: 20, escape: false) %></a>
    </li>
  <% else %>
     <li  role="presentation" class="testli" value="<%= ss.id %>"><a role="menuitem" tabindex="-1" href="javascript:void(0);"><%= ss.name + " - " + ss.description %></a>
    </li>
  <% end %>
<% end %>

首次评论后更新 如果您动态选择该选项,截断的最佳方法是使用javascript / jquery而不是嵌入的ruby。你可以做一些事情:

$(".testli").on("click", function() {
  var myTruncatedString = $(this).text().substring(0,20);
  $(this).text(myTruncatedString)
})

显然不完美,但希望它能带来这个想法。