有关GridView中ImageButton控件后台代码弹出对话框如何写

zyr987503101 2012-06-08 03:17:17
这是我前台的 <asp:GridView> 的相关信息,其中<asp:ImageButton ID="ImageButton2" CommandName="UserUpdate" runat="server" ImageUrl="~/images/edit.PNG" CommandArgument='<%# Eval("userid") %>' /> 这句是用来转向修改界面的。

<asp:GridView ID="gvUserManage" runat="server" AllowPaging="True" Width="100%" CellPadding="1"
BorderWidth="1px" AutoGenerateColumns="False" RowStyle-HorizontalAlign="Center"
CssClass="GridViewStyle" PageSize="10" OnRowDataBound="gvUserManage_RowDataBound"
OnRowDeleting="gvUserManage_RowDeleting"
onrowcommand="gvUserManage_RowCommand">


<PagerStyle CssClass="GridViewPagerStyle" />
<HeaderStyle CssClass="GridViewHeaderStyle" />
<RowStyle CssClass="GridViewRowStyle" Height="25px" />
<AlternatingRowStyle CssClass="GridViewAlternatingRowStyle" />
<PagerSettings FirstPageText="首页" LastPageText="最后 1 页" NextPageText="下 1 页" PreviousPageText="上 1 页"
Mode="NumericFirstLast" />
<EmptyDataTemplate>
<font size="4pt">无数据!</font></EmptyDataTemplate>
<Columns>
<asp:TemplateField HeaderText="序号">
<HeaderStyle HorizontalAlign="Center" Width="40px"></HeaderStyle>
<ItemTemplate>
<%# gvUserManage.PageIndex * gvUserManage.PageSize + gvUserManage.Rows.Count + 1%>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="USERNAME" HeaderText="用户名" SortExpression="Sex" ItemStyle-HorizontalAlign="Center">
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="USERJC" HeaderText="登录名" SortExpression="Sex" ItemStyle-HorizontalAlign="Center">
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:BoundField DataField="rolename" HeaderText="角色" SortExpression="Sex" ItemStyle-HorizontalAlign="Center">
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:BoundField>
<asp:TemplateField HeaderText="操作" ItemStyle-HorizontalAlign="Center">
<ItemTemplate>
<asp:ImageButton ID="ImageButton2" CommandName="UserUpdate" runat="server" ImageUrl="~/images/edit.PNG" CommandArgument='<%# Eval("userid") %>'
OnClientClick="UserUpdate()"/>
     


<asp:ImageButton ID="ImageButton1" CommandName="Delete" runat="server" ImageUrl="~/images/delete.PNG"
OnClientClick="return confirm('你确认要删除此用户吗?');" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:TemplateField>
</Columns>
<PagerTemplate>
<table width="100%" style="font-size: 12px;">
<tr>
<td style="text-align: right">
第<asp:Label ID="lblPageIndex" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>'></asp:Label>
页 /共<asp:Label ID="lblPageCount" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageCount %>'></asp:Label>
页  
<asp:LinkButton ID="btnFirst" runat="server" CausesValidation="False" CommandName="Page"
Text="首页" CommandArgument="first" OnClick="btnPage_Click">
</asp:LinkButton>
<asp:LinkButton ID="btnPrev" runat="server" CausesValidation="False" CommandName="Page"
Text="上一页" CommandArgument="prev" OnClick="btnPage_Click">
</asp:LinkButton>
<asp:LinkButton ID="btnNext" runat="server" CausesValidation="False" CommandName="Page"
Text="下一页" CommandArgument="next" OnClick="btnPage_Click">
</asp:LinkButton>
<asp:LinkButton ID="btnLast" runat="server" CausesValidation="False" CommandName="Page"
Text="尾页" CommandArgument="last" OnClick="btnPage_Click">
</asp:LinkButton>
<asp:TextBox ID="txtNewPageIndex" runat="server" Text='<%# ((GridView)Container.Parent.Parent).PageIndex + 1 %>'
Width="20px" AutoPostBack="True"></asp:TextBox>
<asp:LinkButton ID="btnGo" runat="server" CausesValidation="False" CommandArgument="go"
CommandName="Page" Text="GO" OnClick="btnPage_Click"></asp:LinkButton>
</td>
</tr>
</table>
</PagerTemplate>
</asp:GridView>

这是后台代码:
#region 转发至修改页面
protected void gvUserManage_RowCommand(object sender, GridViewCommandEventArgs e)
{
///转发至修改页面
if (e.CommandName.ToString() == "UserUpdate")
{

Response.Redirect("UpdateUser.aspx?userid="+e.CommandArgument.ToString());


}
}
#endregion

现在我想弹出一个修改的对话框而不是一个新的界面,于是我将
Response.Redirect("UpdateUser.aspx?userid="+e.CommandArgument.ToString());
改为 Response.Redirect("<script type='text/javascript'>window.showModalDialog('../WebApp/System/UpdateUser.aspx? userid=' + e.CommandArgument.ToString(), 'window', 'dialogWidth:400px;DialogHeight=405px;status:no;scroll=yes;help:no')</script>");
其中WebApp是我项目里的一级文件,System是它下面的二级文件,UpdateUser是System下面的一个.aspx.
运行结果出现乱码,我估计是文件路径的问题,试了好多变还是没改过来,求解,在线等!
...全文
143 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zyr987503101 2012-06-11
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
这是我前台的 <asp:GridView> 的相关信息,其中<asp:ImageButton ID="ImageButton2" CommandName="UserUpdate" runat="server" ImageUrl="~/images/edit.PNG" CommandArgument='<%# Eval("userid") %>' /> 这句是用来转向修改界面的。

<asp……
[/Quote]
这个办法不行耶,不过已经解决了,还是在前台解决比较方便!
work_fei 2012-06-08
  • 打赏
  • 举报
回复
Response.Write("<script type='text/javascript'>window.showModalDialog('../WebApp/System/UpdateUser.aspx? userid=' + e.CommandArgument.ToString(), 'window', 'dialogWidth:400px;DialogHeight=405px;status:no;scroll=yes;help:no')</script>");

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧