早上实现了在子页面更新数据以后,父页面刷新树的功能
思路:
- 父页面有个隐藏的html button作为proxy,子页面保存完数据以后,用js调用父页面的html button的触发函数click();
- 父页面有个asp.net的link button控件,text="",等于也是隐藏的,它负责调用后台cs代码里的负责刷新树的方法;
- 父页面的html button onclick的时候,__doPostBack('DoRefresh','');
代码:
父页面apsx:
<input type="button" id="DoRefreshProxy" value="DO" onclick="__doPostBack('DoRefresh','');" style="display:none;" />
<asp:linkbutton id="DoRefresh" runat="server" onclick="DoRefresh_Click" CausesValidation=False/>
父页面cs:
protected void DoRefresh_Click(object sender, EventArgs e)
{
this.BindTree(this.tvBuilding.SelectedNodeIndex,1);
}
子页面cs:
Page.RegisterStartupScript("pb","<script>window.opener.document.getElementById('DoRefreshProxy').click();</script>");