JQuery:如何从ASP.NET中的Master / Content页面获取ID的值

时间:2010-09-10 14:00:52

标签: asp.net jquery master-pages

我在我的内容页面中有这个:但如果我尝试$("#ctl00_cphMaster_CloseButton").

,我将获得空值
$(document).ready(function() {
    $("#ctl00_cphMaster_CloseButton").click(function() {
            jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
                if (r == true)
                    __doPostBack('CloseButton', '');
            });
            return false;
        });
    });
});

<uc1:ImageTextButton ID="CloseButton" runat="server" 
            ImageURL="Images/closeIcon.png"
            Enabled="True" Text="Close" 
            CausesValidation="false" onclick="CloseButton_Click" />

更新:

我试过这样:

$("#<%= CloseButton.ClientID %>").click(function() {

        jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
            if (r == true)
                __doPostBack('CloseButton', '');
        });
        return false;
    });
});

当我运行我的页面时,它会使用以下代码向我抛出错误:

$("#ctl00_cphMaster_CloseButton").click(function() {

        jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
            if (r == true)
                __doPostBack('CloseButton', '');
        });
        return false;
    });

这意味着它获得了正确的ID,但为什么它会抛出一个抱怨null

的错误

Microsoft JScript运行时错误:“null”为null或不是对象

更新:

KP建议:

$("#<%= CloseButton.ClientID %>").click(function() { 
             alert("yes");
       }); 
});

2 个答案:

答案 0 :(得分:2)

您是否尝试使用按钮控件的ClientID - 属性?

$("#<%= CloseButton.ClientID %>")

答案 1 :(得分:1)

我会选择$(“[id $ = CloseButton]”)来匹配以CloseButton结尾的元素