我怎样才能得到一个asp.net控制的控制ID,同时在控制鼠标悬停动态。例如,我有一个名为“Default.aspx”的页面,其中有5个文本框,两个复选框,2个单选按钮。所以,当我将鼠标悬停在特定的控件上时,我应该可以使用javascript或jquery获取当前悬停的控件ID。我不想为每个控件编写代码,而是当鼠标移动到任何控件上时,javascript应该能够检测到鼠标悬停事件,并且在后端应该返回控件ID。获取动态控制ID - JQuery的
任何解决方案?
我怎样才能得到一个asp.net控制的控制ID,同时在控制鼠标悬停动态。例如,我有一个名为“Default.aspx”的页面,其中有5个文本框,两个复选框,2个单选按钮。所以,当我将鼠标悬停在特定的控件上时,我应该可以使用javascript或jquery获取当前悬停的控件ID。我不想为每个控件编写代码,而是当鼠标移动到任何控件上时,javascript应该能够检测到鼠标悬停事件,并且在后端应该返回控件ID。获取动态控制ID - JQuery的
任何解决方案?
$("input").mouseenter(function(e){
e.stopPropagation();
$id=$(this).attr("id");
});
这将返回当前正徘徊输入控制的id
这可能不是最好的实践方式,但我会设置onmouseover事件来触发,设置的隐藏字段的值的函数。在你的JQuery读取字段的值,你就会知道他们做了鼠标悬停哪一个......
$("input").hover(function(){
// hover on
var theId = $(this).attr("id");
if(theId) {
// do something
}
else {
// no id found
}
},
function(){
// hover off
});
我猜想你不会需要检查的ID存在,因为它虽然
我轻笑了一下,当jQuery的开发人员在处理函数中使用jQuery时,它是很长的路才能得到答案.NET控件。这里有一个较短/更快的方法:
$("input").mouseenter(function(e){
var id = this.id;
// do whatever you want with the id here
});
如果你真的想这个传递给后端的Web服务器(你的问题,这是我不明白的一部分),那么你就需要启动通过发布的表单或ajax调用与Web服务器进行通信。
真棒我的朋友!谢谢 – SRA
这只适用于文本框。如果控制是一个按钮或一个复选框,它不似乎是工作 – SRA
对我的作品在此的jsfiddle复选框和按钮:http://jsfiddle.net/jfriend00/CR5V5/。在复选框中,它仅适用于实际的复选框,而不适用于技术上不属于输入标签的标签。 – jfriend00