页面采用微软的AJAX框架,当一开始进入页面,且立即点击按钮时能够正确跳转,但如果在选择列中勾选或者过了几秒种后再点击按钮时,按钮没有反应,也不执行Click事件。调了一下午也没弄出个原因来,还望大侠出手相救。
前台代码:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<base target="_self" />
<div>
<asp:Label ID="lblToBeParchased" runat="server" Text="【待采购订单】" SkinID="Title"></asp:Label>
<br />
<asp:Panel ID="Panel1" runat="server" Width="820px" Height="420px" BorderStyle="Outset" ScrollBars=Auto>
<asp:Label ID="lblCheckOrder" runat="server" Text="请选择订单:"></asp:Label>
<asp:Panel ID="pnlToBeParchased" runat="server" Width="1000px" Height="400px"><asp:GridView ID="gvToBeParchased" runat="server" DataKeyNames="IAuto_id" OnRowDataBound="gvToBeParchased_RowDataBound"
AutoGenerateColumns="False">
<Columns>
<asp:TemplateField ShowHeader="False">
<ItemStyle Width="4px" />
<HeaderStyle Width="4px" />
<ItemTemplate>
<asp:CheckBox ID="chkSelectBox" runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="IAuto_id" HeaderText="自动编号" Visible="False" />
<asp:BoundField HeaderText="订单号" DataField="or_code">
</asp:BoundField>
<asp:BoundField HeaderText="产品名" DataField="p_name">
</asp:BoundField>
<asp:BoundField HeaderText="规格" DataField="p_spec">
</asp:BoundField>
<asp:BoundField HeaderText="交货期" DataField="oi_date" DataFormatString="{0:yyyy-MM-dd}"
HtmlEncode="False">
</asp:BoundField>
<asp:BoundField HeaderText="订单量" DataField="oi_num">
</asp:BoundField>
<asp:BoundField HeaderText="玻管编号" DataField="p_tubecode">
</asp:BoundField>
<asp:BoundField HeaderText="玻管量 " DataField="tub_num">
</asp:BoundField>
<asp:BoundField HeaderText="瓶盖名" DataField="p_clocode">
</asp:BoundField>
<asp:BoundField HeaderText="瓶盖总量" DataField="pur_clo_num">
</asp:BoundField>
<asp:BoundField HeaderText="已采购量" DataField="tub_received">
</asp:BoundField>
<asp:BoundField HeaderText="已采购量" DataField="clo_received">
</asp:BoundField>
</Columns>
</asp:GridView>
</asp:Panel>
</asp:Panel>
<asp:UpdatePanel ID="upnlToBeParchased" runat="server" ChildrenAsTriggers="False"
UpdateMode="Conditional">
<ContentTemplate>
<table width="800">
<tbody>
<tr>
<td align="center">
<table>
<tbody>
<tr>
<td style="width: 318px" colspan="3">
<asp:ImageButton ID="ibtnNextStep" OnClick="ibtnNextStep_Click" runat="server" ImageUrl="~/Images/NextStep.gif">
</asp:ImageButton>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="ibtnNextStep" />
</Triggers>
</asp:UpdatePanel>
</div>
</asp:Content>
Click事件:
protected void ibtnNextStep_Click(object sender, ImageClickEventArgs e)
{
string str = "";
for(int i=0;i<gvToBeParchased.Rows.Count;i++)
{
CheckBox chk = (CheckBox)gvToBeParchased.Rows[i].Cells[0].FindControl("chkSelectBox");
if (chk.Checked)
{
str += gvToBeParchased.DataKeys[i]["IAuto_id"] + ",";
}
}
if (str == "")
{
ScriptManager.RegisterClientScriptBlock(upnlToBeParchased, typeof (UpdatePanel), "okBack","alert( '请至少选择一条数据 ');", true);
return;
}
if (str.Substring(str.Length - 1, 1) == ",")
{
str = str.Substring(0, str.Length - 1);
}
Session["orders"] = str;
Response.Redirect("PurDetail.aspx?mode=add&type=" + ViewState["type"].ToString().Trim() + "&source=2");
}