2009-05-26 151 views
0

好了,我有如下表:更新表格单元格的jQuery

<table id="servertable"> 
     <tr> 
     <th scope="col">Server Name</th><th scope="col">Location</th><th scope="col">Status</th> 
     </tr><tr><td>servername1</td><td>pathtoserver1</td><td>Unknown</td></tr> 
     <tr><td>servername2</td><td>pathtoserver2</td><td>Unknown</td></tr> 
     <tr><td>servername3</td><td>pathtoserver3</td><td>offline</td> 
     </tr> 
    </table> 

,并基于“pathtoserver”我试图更新服务器(使用jquery)的状态,也就是说,JavaScript的功能接收, “pathtoserver2”和“在线”。 我想将服务器放在表格中,并替换值“未知”或任何可能与“在线”。我试过这样的事情: $('#servertable td')。find(“#”+ server); - 找到服务器,但这是寻找id,所以,我不确定是否需要分配一个id到包含“pathtoserver”值, ,或者如果有某种方式使用“.each(function(。 。)”构造位于它,因此更新

所以我用这个。$('#servertable td:contains(' + server + ')')

,这几乎工作,但我需要找到精确匹配,所以我将其更改为:

$('#servertable td:eq(' + server + ')') 

但现在,它只发现第一个(我认为),我如何找到所有精确匹配?

+0

你有没有考虑在`tr`s或`td`上设置一个id? – Powerlord 2009-05-26 20:04:25

回答

0

这应该找到与服务器名称的TD,假设变量称为“服务器”:

$('#servertable td:contains(' + server + ')') 

获得下一个TD,你只需要添加.next()了这一点。

+0

我把它改为td:eq('+ server +')'),但是现在如果我在表中有多个具有相同名称的值,它只会找到一个..? – ra170 2009-05-28 16:20:18