2011-10-28 118 views
0

我有一個IP管理與範圍和jQuery搜索腳本,以檢查是否已被使用IP,我添加類每行的IP地址該範圍,就像這樣jQuery的檢查類是否存在

<tr class="table_176 213.5.176.120 213.5.176.121 213.5.176.122 213.5.176.123 213.5.176.124" id="213.5.176.120-124" style="display:none;"> 
         <td class="actualip" align="center" >213.5.176.120-124</td> 
         <td >5</td> 
         <td colspan="2" align="center" ><a href="https://www.racksrv.com/portal/staff/clientssummary.php?userid=637" target="_blank"> Mike Burkett</a></td> 
         <td align="center" ><a href="https://www.racksrv.com/portal/staff/clientshosting.php?userid=637&id=1537">RS96</a></td> 
         <td ></td> 
         <td align="center" ><a href="https://www.racksrv.com/portal/staff/supporttickets.php?action=open&userid=637" target="_blank"><img src="https://www.racksrv.com/portal/staff/images/icons/ticketsopen.png" alt="Open Ticket for " title="Open Ticket for " width="16" height="16"/></a></td> 
        </tr> 

並使用以下JQ

$('#search').click(function() { 
     $found = false; 
     $ip = $('#value').val(); 
     if ($("."+$ip).length){ 
      alert("found"); 
     } 

     if($found == false) { 
      alert('The IP you searched for was not found!'); 
     } 
    }); 

但這不起作用?任何人有任何想法?

+1

$(」。213.5.176.120' )<=>類=‘應避免213 5 176 120’點中的類名(或在JQ選擇轉義) – biziclop

+0

你的類的名稱是無效的,它不能以數字開頭。 http://stackoverflow.com/questions/448981/what-c​​haracters-are-valid-in-css-class-names/449000#449000 –

+0

相關:http:// stackoverflow。com/questions/3932058/jquery-how-to-reference-an-html-element-which-class-name-has-a-period – kojiro

回答

0

我自己的錯誤是由

回答類名「$(」。213.5.176.120' )< =>類= 「213 5 176 120」 點應避免(或在JQ選擇器)逃逸「

0

首先,我很確定點(。)在類名中是無效的,即使它們是,我也不會使用它們。這是混淆。 順便說一下,根據規格,班級不能以數字開頭。

所有的CSS語法在ASCII範圍內都是不區分大小寫的(即[a-z]和[A-Z]是等價的),除了不受CSS控制的部分。例如,HTML屬性「id」和「class」,字體名稱和URI的大小寫敏感性不在本規範的範圍之內。特別要注意的是元素名稱在HTML中不區分大小寫,但在XML中區分大小寫。 在CSS中,標識符(包括元素名稱,類和選擇器中的ID)只能包含字符[a-zA-Z0-9]和ISO 10646字符U + 00A0及更高版本,以及連字符( - )和下劃線(_);他們不能以數字,兩個連字符或連字符後跟數字開頭。標識符也可以包含轉義字符和任何ISO 10646字符作爲數字代碼(參見下一項)。例如,標識符「B & W?」可寫成「B \ & W \?」或「B \ 26 W \ 3F」。

檢查CSS Syntax

其次,你不應該使用類來存儲元數據,jQuery提供了一個方便的方法來做到這一點,它的簡稱,data()

保留它們應得的CSS類。

+0

期間不會使類名無效,在CSS中選擇更加困難。 – kojiro

+0

正如我所說,我不確定,但如果他們不是,他們應該是因爲這真是令人困惑。 –

1

由於意見建議您的問題正在於你的類名所造成的點,如果你的IP地址存儲在一個類名,然後像這樣的工作 -

var ip = '213.5.176.120'; 
    if ($("tr[class*='" + ip + "']").length){ 
     alert("found"); 
    } 

演示 - http://jsfiddle.net/eZCdf/

0

正如其他人所說的,問題在於你的班級。只需用下劃線替換這些點並使用類名稱就很容易。這裏有一個快速和骯髒的例子:http://jsfiddle.net/LFfwZ/