3

下面是我的 .ascx 页面中的一些示例代码,我正在尝试使用 jquery 来执行某些操作,对 $("input")我有很好的帮助但 $("asp:Label")无法正常工作。我应该包括什么才能$("asp:Label")工作

<asp:Label ID="lblInvolvedMembers" runat="server"></asp:Label>
<asp:Label ID="lblAcceptedBy" runat="server">    </asp:Label>
<input type="text" id="family" value="family " />
<input type="button" id="family1" value="button" />

//here i am trying to get server control to perform some action,   $("input") served me well but  $("asp:Label") is not working. what should i include inorder to make  $("asp:Label") work

$("asp:Label").hover(function() {
        Tip.text('');
        var ToolTipID = $(this).attr('id');
        var height = $(this).height() + 10;
        var offset = $(this).offset();
        if (data[ToolTipID].split('<br\>').length - 1) {
            var temp = data[ToolTipID].split('<br\>').length - 1;
            height = temp * 10;
        } else {
            height = 10;
        }

  $("input").hover(function() {
        Tip.text('');
        var ToolTipID = $(this).attr('id');
        var height = $(this).height() + 10;
        var offset = $(this).offset();
        if (data[ToolTipID].split('<br\>').length - 1) {
            var temp = data[ToolTipID].split('<br\>').length - 1;
            height = temp * 10;
        } else {
            height = 10;
        }
4

3 回答 3

1

你会想要改变

<asp:Label ID="lblInvolvedMembers" runat="server"></asp:Label>

类似于

<asp:Label ID="lblInvolvedMembers" runat="server" CssClass="label"></asp:Label>

那么你可以在这里使用 jQuery 选择器

$('.label').hover(function() {

代替

$("asp:Label").hover(function() {

这样,所有标签都将具有 jQuery 悬停功能。

如果您想悬停特定标签,则必须使用

$('#<%= lblInvolvedMembers.ClientID %>').hover(function() {

ASP 标签在被传递到客户端浏览器之前被处理,javascript 可以对它们进行操作,因此

lblInvolvedMembers会变成类似的ctl0_label_lblInvolvedMembers东西。

更新

看起来你还没有关闭你的 jQuery 函数

$('.label').hover(function() {
        Tip.text('');
        var ToolTipID = $(this).attr('id');
        var height = $(this).height() + 10;
        var offset = $(this).offset();
        if (data[ToolTipID].split('<br\>').length - 1) {
            var temp = data[ToolTipID].split('<br\>').length - 1;
            height = temp * 10;
        } else {
            height = 10;
        }
});

$("input").hover(function() {
    Tip.text('');
    var ToolTipID = $(this).attr('id');
    var height = $(this).height() + 10;
    var offset = $(this).offset();
    if (data[ToolTipID].split('<br\>').length - 1) {
        var temp = data[ToolTipID].split('<br\>').length - 1;
        height = temp * 10;
    } else {
        height = 10;
    }
});

我不确定是什么Tipdata但你可以.hover()在这个 jsFiddle -> http://jsfiddle.net/XF4Zk/上看到一个工作函数,这里的标签 ID 代表由 ASP.NET 创建的控件的客户端 ID,它这就是为什么你会用它lblInvolvedMembers.ClientID来获取 Javascript 控件的值

于 2013-03-05T10:03:06.560 回答
0

尝试

$('input[id$=lblInvolvedMembers]').hover(function() {
 });
于 2013-03-05T08:52:42.583 回答
0

尝试这个:

$('#<%=Label.lblInvolvedMembers%>').hover();

或这个:

$('#<%=Label.lblInvolvedMembers%>').hover();
于 2013-03-05T08:53:02.643 回答