2011-08-24 44 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