通过jquery从用户Control中查找父控件的服务器端元素

时间:2015-03-30 00:46:28

标签: jquery asp.net user-controls find parent-child

我有一个使用One UserControl( UC1.ascx )的asp.net页面( page1.aspx )。

在userControl中更改textBox时,我想在page1.aspx 中填充 textBox。

是否有任何jQuery或JavaScript函数? 如何访问父页面元素?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

Usercontrol应该不知道它的父aspx。应该决定做什么的是主要的aspx。因此,您可以将usercontrol的文本框(或它的ClientID)公开为公共属性,然后附加js方法来完成剩下的工作。

示例:

<强> MyUserControl.ascx:

...

<asp:TextBox id="ucTextBox" runat="server" />

...

<强> MyUserControl.ascx.cs:

...

public TextBox ChanginTextBox
{
    get
    {
        return ucTextBox;
    }
}

...

<强> MainAspx:

...

<uc:MyUserControl Id="myUC" runat="server" />

...
<script>
$(function(){
    // jQuery
    $("#<%=myUC.ChanginTextBox.ClientID %>").on("change",function(){
        // fill your other text box
    });
});
</script>