动态获取控件ID - JQuery

时间:2011-08-24 15:42:09

标签: javascript jquery asp.net

如何动态地在控件上鼠标悬停时获取asp.net控件的控件ID。例如,我的页面名为“Default.aspx”,它有5个文本框,两个复选框,2个单选按钮。因此,当我将鼠标悬停在特定控件上时,我应该能够使用javascript或jquery获取当前悬停的控件ID。我不想为每个控件编写代码,相反,当鼠标移动到任何控件上时,javascript应该能够检测鼠标悬停事件,并且在后端应该返回控制ID。

任何解决方案?

4 个答案:

答案 0 :(得分:7)

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

这将返回当前正在悬停的输入控件的id

答案 1 :(得分:3)

当jQuery开发人员在其处理程序函数中使用jQuery时,我笑了一下,这是获得答案的漫长道路。这是一种更短/更快的方式:

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

如果您真的想将此传递给后端Web服务器(问题的一部分,我不清楚),那么您需要使用已发布的表单启动与Web服务器的通信或ajax电话。

答案 2 :(得分:0)

这可能不是最佳实践方式,但我会设置onmouseover事件来触发设置隐藏字段值的函数。在你的JQuery中读取该字段的值,你就会知道他们在鼠标悬停上做了哪一个...

答案 3 :(得分:0)

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

我想你不需要检查id是否存在,因为它是.NET控件,但