2010-10-01 75 views
12

我正在嘗試查找具有特定樣式的元素,並將其樣式更改爲其他元素。在jquery中按樣式選擇器查找元素

這裏是html元素

<table style='width: 555px;'> 
    <tr> 
    <td>blablabla</td> 
    </tr> 
</table> 

現在我試圖找到表寬555px和使用jquery將其更改爲650像素。

$('table[style*=width:555px]').css("width", "610px"); 

但這不起作用。有人可以引發一個想法嗎?

注意:由於某些原因,我無法更改html。

回答

2

那麼顯而易見的問題是,你的元素是<table>和你的jQuery選擇器是選擇所有<div> s。

我想象也有一個空白的問題,因爲你的HTML在樣式元素中包含間距,但是你的選擇器沒有。 (我可能是錯在這裏,不與E[a*=v]選擇經歷。)

+0

對不起錯誤的代碼複製。我的實際代碼塊是$('table [style * = width:555px]')。css(「width」,「610px」); – Krishna 2010-10-01 18:06:21

19

謹防空間:)

而且你應該"'引用值。

$('table[style*="width: 555px"]').css("width", "610px"); 

如果它在IE中不起作用,您可以嘗試刪除空間? (沒有經過測試的!)

$('table[style*="width: 555px"],table[style*="width:555px"]') 
    .css("width", "610px"); 
+1

部分工作,我的意思是在Firefox中工作,但不在IE中:( – Krishna 2010-10-01 18:14:28

17
$('table').filter(function() { 
    return $(this).css('width') == '555px'; 
}).css("width", "610px");