子窗口與父窗口怎么
父窗體
有一GridView,其中有兩個欄位,"尺寸別工資"及"工時",如下:
<asp:ButtonField DataTextField="SizeRateType" HeaderText="尺寸別工資">
<HeaderStyle BorderColor="Black" BackColor="#AAAADD" />
<ItemStyle BorderColor="Black" HorizontalAlign ="Center" />
</asp:ButtonField>
<asp:BoundField DataField="WorkTime" HeaderText="工時">
<HeaderStyle BorderColor="Black" BackColor="#AAAADD"/>
<ItemStyle BorderColor="Black" HorizontalAlign="Right" />
</asp:BoundField>
下面的意思是,如果主鍵SizeRating=2時,點擊"尺寸別工資"這一欄位,可以彈出一個子窗口
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType.Equals(DataControlRowType.DataRow))
{
if (this.GridView1.DataKeys[e.Row.RowIndex]["SizeRating"].ToString() == "2")
{
LinkButton btDatail = (LinkButton)e.Row.Cells[2].Controls[0];
btDatail.Attributes.Add("onclick", "Newswindows(" + this.GridView1.DataKeys[e.Row.RowIndex].Values["MFGWorkID"].ToString() + "," + this.GridView1.DataKeys[e.Row.RowIndex].Values["WageType"].ToString() + ")");
}
}
}
打開子窗口的javascript:
<script type="text/javascript">
function Newswindows(MFGWorkID,WageType)
{
var retValue =window.showModalDialog("MFGWorkSizeDocUI.aspx?MFGWorkID="+MFGWorkID+"&WageType="+WageType,"製程尺寸段工資","scrollbars=yes;resizable=yes;help=no;status=no;dialogHeight=500px;dialogwidth=380px;center=yes");
if(retValue=="refresh") window.location.reload();
return false;
}
</script>
子窗口:
也有一GridView,其中也有一欄位"工時"
<asp:BoundField DataField="WorkTime" HeaderText="工時">
<HeaderStyle BorderColor="Black" BackColor="#AAAADD"/>
<ItemStyle BorderColor="Black" HorizontalAlign="Right" Width ="80px" />
</asp:BoundField>
工時輸入框:
<td align ="right" width ="60px" >工時:</td>
<td align ="left" style="height: 24px"><cc1:IBENumericEdit ID="IBENumericEdit2" Width ="60px" runat="server" ValueText="0"></cc1:IBENumericEdit><asp:Label runat ="server" Text ="分鐘" ID ="lbl1"></asp:Label></td>
新增按鈕:
<cc1:ButtonAdd ID="ButtonAdd2" runat="server" OnClick="ButtonAdd2_Click" />
現有個問題,如下:
當在子窗口輸入工時,點擊新增。新增成功後,子窗口的GridView增加一條記錄。在子窗口關閉時,刷新父窗口的工時(父窗口的工時等于子窗口工時的總和),接著,我再次點擊父窗口"尺寸別工資"欄位,打開子窗口,但是發現子窗口的GridView原先建立的那條記錄並沒有顯示出來,經多次單步調試,原來它沒有重新執行子窗口的protected void Page_Load(object sender, EventArgs e)
請會者告知,謝謝