gv
すべてのアカウントを表示および管理するために、aspx ページにDevexpress GridViewがあります。
<asp:ScriptManager ID="ScriptManager1" runat="server"/>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<dx:ASPxGridView ID="gv" runat="server"
AutoGenerateColumns="False"
GridLines="None"
AllowPaging="true"
CssClass="mGrid" >
<SettingsBehavior AllowSelectByRowClick="True" AllowSelectSingleRowOnly="True"/>
<Styles>
<Header BackColor="#4FC9C4" Font-Bold="True" ForeColor="White"></Header>
</Styles>
</dx:ASPxGridView>
</ContentTemplate>
</asp:UpdatePanel>
Gridview の各行にはコマンド ボタンDelete
があり、管理者はアカウント以外のアカウントを削除でき Admin
ます。
コードビハインドを見てください:
protected void grid_InitDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e)
{
//...get username value from e
if(username=="Admin")
{
e.Cancel = true;
gv.CancelEdit();
string script = "alert('Cannot delete Admin account');";
ScriptManager.RegisterStartupScript(this, typeof(Page), "alert", script, true);
return;
}
else
{
...delete account
}
}
このページを作成し、管理者アカウントの [削除] ボタンをクリックすると、予期したとおりにアラートが表示されません。
デバッグしようとすると、プログラムif
はステートメント内のすべての行にヒットし (include string script = "alert('Cannot delete Admin account');";
)、実行しますreturn
アラートがそこに表示されない理由が本当にわかりませんか???
ヘルプ!!!