2011-03-09 38 views
-1

那么,我有一个动态生成的表,我没有访问的源代码。每个<tr>有一个单一的<td><td>里面我有:jquery删除nonbreakingspaces

<td><label>sdsd</label><input text /><label>uuyti</label><select></select></td> 

它发生,我使用的CSS,我想在两行的字段完全一致,但在第二行,我有第二个标签和选择之间的一个nbsp,所以我想删除那个nbsp,但我不知道如何用jQuery来达到它。

谢谢

回答

3

如果你想删除所有&nbsp;您可以使用以下方法:在jsfiddle

$("tr td").html(function(i, h) { 
    return h.replace(/&nbsp;/gi, ""); 
}); 

例。

如果你想放置&nbsp;第二个标签后,您可以使用jsfiddleeq()after()

$("tr td label:eq(1)").after("&nbsp;"); 

例。

+0

谢谢,这工作,但不幸的是来自服务器(动态网站(远离垃圾))的HTML是非常不平衡的,所以我不得不增加额外的空间没有一个:) – 2011-03-09 21:36:14

0
$("tr td").each(function(index, html){ 
     $(this).replaceWith($(this).html()+"&nbsp;"); 
    }); 

这似乎是工作的jsfiddle。仍在测试

+1

@安德雷给我一秒钟。刚刚抓住它的标签,并选择 – DefyGravity 2011-03-09 18:09:12

+0

对不起,它没有工作。我的td失去了它的所有控制,并充满了所有内部控制或不控制的文本。它有空间... – 2011-03-09 18:17:33

+0

@André我一直在尝试,以及。我再加一个编辑,这是我的一个错误,以防止失去控制。 – DefyGravity 2011-03-09 18:21:56