【Gridview】中XX.Attributes["OnClientClick"]的问题
【后台】:
protected void text_changed(object sender, EventArgs e)
{
TextBox tb = sender as TextBox;
int row = ((GridViewRow)(tb).NamingContainer).RowIndex;
(GridView1.Rows[row].FindControl("CommitButton") as Button).Attributes["OnClientClick"] = string.Format("javascript:return confirm('{0}{1} are you sure?')", "hello", tb.Text);
}
【前台】:
<asp:GridView ID="GridView1" runat="server" CssClass="fixedheader" AutoGenerateColumns="false"
AllowPaging="True" OnPageIndexChanging="PageIndex_Changing" >
<Columns>
<asp:BoundField DataField="EName" HeaderText="Member"/>
<asp:BoundField DataField="AjustLeft" HeaderText="AjustLeft" />
<asp:TemplateField HeaderText=" ">
<ItemTemplate>
<asp:TextBox ID="Days" runat="server" OnTextChanged="text_changed" AutoPostBack="true" CommandArgument='<%#Eval("EName") %>'>
</asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText=" ">
<ItemTemplate>
<asp:Button ID="CommitButton" runat="server" Text="Commit" OnClick="Commit_Click" CommandArgument='<%#Eval("EName") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
【症状】:text_changerd事件触发后,通过后台debug确认【(GridView1.Rows[row].FindControl("CommitButton") as Button).Attributes["OnClientClick"] 】已经被赋值,但在页面上点击对应的Commit没有跳出confirm对话框。