在Master母板页中,如何利用ajax.net实现Content内容页的控件交互,曾经一直困扰着我们OA软件的开发。Master实现ajax.net的异步交互,使Master中的Content内容页不再孤立,如何去实现呢?下面我们来看一段示例代码:
    新建Master页面:Hello.master
母板页Master实现ajax的异步交互之美 _ajax
    修改代码如下:
html xmlns="http://www.w3.org/1999/xhtml" >
head runat="server">
    title></title>
    asp:ContentPlaceHolder ID="head" runat="server">
    /asp:ContentPlaceHolder>
/head>
body>
    form id="form1" runat="server">
    asp:ScriptManager ID="ScriptManager1" runat="server">
    /asp:ScriptManager>
    div>
        asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
        
        /asp:ContentPlaceHolder>
        asp:ContentPlaceHolder ID="ContentPlaceHolder2" runat="server">
        
        /asp:ContentPlaceHolder>
        asp:ContentPlaceHolder ID="ContentPlaceHolder3" runat="server">
        
        /asp:ContentPlaceHolder>
    /div>
    /form>
/body>
/html>
    在这段代码中,如何让ContentPlaceHolder2的控件ContentPlaceHolder1的控件进行异步交互呢?
    新建一个页面,继承模板页Hello.mater,命名为Hello.aspx。
    Html代码示例如下:
asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
/asp:Content>
asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    asp:UpdatePanel ID="UpdatePanel1" runat="server">
        ContentTemplate>
            asp:TextBox ID="TextBox1" runat="server">/asp:TextBox>
        /ContentTemplate>
        Triggers>
            asp:AsyncPostBackTrigger ControlID='ContentPlaceHolder2$Button1' EventName='click' />
        /Triggers>
    /asp:UpdatePanel>
/asp:Content>
asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder2" runat="server">
    asp:Button ID="Button1" runat="server" Text="Button" />
/asp:Content>
asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder3" runat="server">
/asp:Content>

    vb代码示例如下:
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
        TextBox1.Text = "Hello!"
    End Sub
    如此我们就实现了在Content2中点击按钮异步更新Content1中的控件。是不是很简单,快去试试吧,完全解读母板页Master实现ajax.net的异步交互之美,实现Content内容页的控件交互。这个方案在.net实现的办公自动化软件中将会得到广泛的应用。