2012-08-11 70 views
0

我需要使用javascript或jQuery截断表格第一列中的文本。这里就是我在我:jquery或javascript:截断表格单元格中的文本

表:

<table id="bigTable"> 
    <tr><td>Text is tooooo looong</td><td>Just Right</td></tr> 
    <tr><td>Text is tooooo looong</td><td>Just Right</td></tr> 
    <tr><td>Text is tooooo looong</td><td>Just Right</td></tr> 
</table> 

尝试这样的东西没有成功以下(从其他类似的帖子编译):

var lbl = $("#bigTable tbody"); 
var newLbl = $(lbl[0].outerHTML); 
$('td:eq(0)', newLbl).slice(5); 

它似乎并没有被得到内容或单元格中的文本。没有任何影响。试过也 -

$('td:eq(0)', newLbl)contents().slice(5); 


$('td:eq(0)', newLbl).text().slice(5); 

我做错了什么?

编辑

之前更向下投票与一般脾气暴躁的烦躁时... 我必须从复制到操作和以后显示的变量在不同的窗口/ DIV一个div文本。 这发生在响应按钮单击。

...但应用css规则听起来很有希望。将尝试,而不是。

请参阅此琴明白我需要做的:

http://jsfiddle.net/Vsse3/2/

我必须能够使用CSS的想法之前,包柱细胞与一个div。

+4

你可以只用CSS'溢出做到这一点:hidden'和'文本溢出:ellipsis'。试试吧,看看它是否有效... – elclanrs 2012-08-11 00:12:07

+0

这段代码很糟糕。此外,它已被问到这里:http://stackoverflow.com/questions/536814/insert-ellipsis-into-html-tag-if-content-too-wide – WhyNotHugo 2012-08-11 00:12:36

+0

它可能会帮助,如果你做了一个jsfiddle – 2012-08-11 00:13:02

回答

2

你不需要JS,使用CSS:

演示:
http://jsfiddle.net/vTDAQ/3/

@elckarns的评论是正确的,但你也需要包装在div单元格内容使用text-overflow

另请注意,您的表格结构不正确。

演示更新的要求:
http://jsfiddle.net/Vsse3/6/

+0

我试过这个,我的宽度规格没有被遵守。 – Bubnoff 2012-08-11 00:34:09

+0

那么你正在实施这个错误。发布你的问题jsfiddle。 – Peter 2012-08-11 00:36:09

+0

确实不是很好。'​​'取代'​​'可能有助于 – yitwail 2012-08-11 00:47:43

相关问题