2011-08-24 43 views
1

我怎樣才能得到一個asp.net控制的控制ID,同時在控制鼠標懸停動態。例如,我有一個名爲「Default.aspx」的頁面,其中有5個文本框,兩個複選框,2個單選按鈕。所以,當我將鼠標懸停在特定的控件上時,我應該可以使用javascript或jquery獲取當前懸停的控件ID。我不想爲每個控件編寫代碼,而是當鼠標移動到任何控件上時,javascript應該能夠檢測到鼠標懸停事件,並且在後端應該返回控件ID。獲取動態控制ID - JQuery的

任何解決方案?

回答

6
$("input").mouseenter(function(e){ 
e.stopPropagation(); 
$id=$(this).attr("id"); 
}); 

這將返回當前正徘徊輸入控制的id

0

這可能不是最好的實踐方式,但我會設置onmouseover事件來觸發,設置的隱藏字段的值的函數。在你的JQuery讀取字段的值,你就會知道他們做了鼠標懸停哪一個......

0
$("input").hover(function(){ 
    // hover on 
    var theId = $(this).attr("id"); 
    if(theId) { 
     // do something 
    } 
    else { 
     // no id found 
    } 
}, 
function(){ 
    // hover off 
}); 

我猜想你不會需要檢查的ID存在,因爲它雖然

3

我輕笑了一下,當jQuery的開發人員在處理函數中使用jQuery時,它是很長的路才能得到答案.NET控件。這裏有一個較短/更快的方法:

$("input").mouseenter(function(e){ 
    var id = this.id; 
    // do whatever you want with the id here 
}); 

如果你真的想這個傳遞給後端的Web服務器(你的問題,這是我不明白的一部分),那麼你就需要啓動通過發佈的表單或ajax調用與Web服務器進行通信。

+0

真棒我的朋友!謝謝 – SRA

+0

這隻適用於文本框。如果控制是一個按鈕或一個複選框,它不似乎是工作 – SRA

+0

對我的作品在此的jsfiddle複選框和按鈕:http://jsfiddle.net/jfriend00/CR5V5/。在複選框中,它僅適用於實際的複選框,而不適用於技術上不屬於輸入標籤的標籤。 – jfriend00