说实话,这个问题确实挺恶心的,为难了老半天
text-overflow: ellipsis; 这个相信大家都知道,是将多余的字符显示为省略号的意思
但是它单独是无法使用的,还要配上overflow: hidden; text-overflow: ellipsis; white-space: nowrap;三个在一起才完美
我遇到的问题很神奇,三个放上去也不会出现省略号,而且我的内容还是通过jstl表达式<c:foreach>获取到的:
具体如何实现请看代码:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
他们俩先怼上去。
<td id="${io.describe}" class="line_table miaoshu" align="center" width="40%">
<span id="neirong" class="left_txt"> <c:if test="${fn:length(io.describe)>6 }"> ============》如果字数大于6个的话,按情况自己调哈。 ${fn:substring(io.describe,0,6) }... ============》 这一句的意思就是只显示6个字,多的就用。。。省略号代替显示,说白了就是不显示 </c:if> <c:if test="${fn:length(io.describe)<= 6 }"> ============》如果字数小于等于6的话; ${io.describe} =============》直接输入原值 </c:if> </span>
</td>
ok,咱们已经给他整的达到目的了
如图:
那么问题来了,如何客户要看的话,怎么办?
最简单的方法,点描述的时候alert()出来就可以了呗,没错,但是恶心的来了,因为是通过jstl表达式获取到的描述内容,
那么alert出来就会是==============》带省略号的!!!而不是完整的描述内容
后来在网上找到了但“蛛丝马迹”---------------(您还别笑,挺难找的)
代码:
<td id="${io.describe}" class="line_table miaoshu" align="center" width="40%">
class写了描述,然后又写了一id!将jstl表达式获取到的值放到id里面,
$(".miaoshu").each(function(){
$(this).click(function(){
alert($(this).attr('id'))
})
})
通过class调id,我是通过each查的所有的。
感觉有点混乱,我自己可以看的懂那种感觉,不好意思