2012-04-28 73 views
1

我正在使用這個在表中指向一個單獨的td。並且id(dynid)是動態創建的,因此當用戶將鼠標懸停在td上時,我需要將位置更改爲絕對位置。我嘗試下面的一個,但它不是wroks提前如何在jQuery中使用動態ID

+0

你能後生成的HTML的樣本?所以你的ID是這樣的? ''其中3423是'dynid'? – Smamatti 2012-04-28 09:35:16

+0

您確定您選擇元素的方式嗎?也許只是$('#td'+ dynId)? – yentsun 2012-04-28 09:41:28

+0

@Smamatti:是的,只有它會生成 – krish 2012-04-28 09:42:10

回答

2

您正在尋找td元素中的某個元素

$('#selectTable tr td #td'+dynid).hover(

function() { 

    $(this).css("position","absolute"); 

} 
); 

謝謝,但你要具備一定的id td元素。有空白。您需要td#id而不是td #id

dynid = 2; // Test 

$('#selectTable tr td#td' + dynid).hover(
    function() { 
     $(this).css("position","absolute"); 
    } 
); 

與背景色
http://jsfiddle.net/FKhbd/

可能要定義一個第二處理程序的樣品,如果懸停末端。事情是這樣的:

$('#selectTable tr td#td' + dynid).hover(
    function() { 
     $(this).css("position","absolute"); 
    }, 
    function() { 
     $(this).css("position","relative"); 
    } 
); 
0

也許你的選擇是錯誤的:'#selectTable tr td #td'+dynid應該成爲'#selectTable tr td#td'+dynid。你也想是明智的開啓和關閉CSS類,設置的位置是:絕對的,像這樣:

$("#selectTable td").hover(function() { 
    $(this).addClass("pos-abs"); // focus 
}, function() { 
    $(this).removeClass("pos-abs"); // blur 
}); 

http://api.jquery.com/hover/