一个绝对比较难的问题:非简单的局部刷新内容
我在做一个系统,我在这个系统中一个页面使用了MultiView,并且在提交前需要用户填写很多的东西,在填写一项仓库信息的时候,我使用了showModalDialog,代码如下:protected void lbWarehouseAdd_Click(object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "ToolTip", "window.showModalDialog('InWarehouse.aspx?action=new&item=" + Request.QueryString["id"].ToString() + "&" + Guid.NewGuid().ToString() + "','','dialogWidth:600px;dialogHeight:400px;scroll:no;status:no');", true);
BindWarehouse();
}
结果是我在打开的窗口中填写好内容后,执行了BindWarehouse(),把新添加的仓库在GridView中显示了出来,但填写仓库信息的窗口又弹出了.
我又点击了弹出的窗口上的关闭按钮,然后才关闭.
我想知道为什么会弹出两次窗口?如何避免? --------------------编程问答-------------------- 把弹出窗口的事件放在客户端试试看,服务器端执行客户端脚本的命令是否有问题 --------------------编程问答-------------------- 现在我明白了,原来我写的代码重复了.在onload的时候.往这个控件上添加了一个onclick事件.
经过一番研究,我发现我的问题应是这样:
使用onclick事件的时候,可以输入内容返回后并执行BindWarehouse(),但通过后台的
__________
ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "ToolTip", "window.showModalDialog('InWarehouse.aspx?action=new&item=" + Request.QueryString["id"].ToString() + "&" + Guid.NewGuid().ToString() + "','','dialogWidth:600px;dialogHeight:400px;scroll:no;status:no');", true);
__________
的内容,但我在删除仓库的时候,我要先在Gridview中选择仓库,然后根据仓库的ID传递弹出窗口中的要删除的仓库的ID参数,
也就是说,onclick事件不能在onload时生成,要在选择仓库后生成.不知道如何实现? --------------------编程问答-------------------- 现在我明白了,原来我写的代码重复了.在onload的时候.往这个控件上添加了一个onclick事件.
经过一番研究,我发现我的问题应是这样:
使用onclick事件的时候,可以输入内容返回后并执行BindWarehouse(),但通过后台的
__________
ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(), "ToolTip", "window.showModalDialog('InWarehouse.aspx?action=new&item=" + Request.QueryString["id"].ToString() + "&" + Guid.NewGuid().ToString() + "','','dialogWidth:600px;dialogHeight:400px;scroll:no;status:no');", true);
__________
生成的弹出窗口,关闭后不会刷新内容.
但我在删除仓库的时候,我要先在Gridview中选择仓库,然后根据仓库的ID传递弹出窗口中的要删除的仓库的ID参数,
也就是说,onclick事件不能在onload时生成,要在选择仓库后生成.不知道如何实现? --------------------编程问答-------------------- 呵呵 --------------------编程问答-------------------- 现在这样混合编程
很容易混乱
我也遇见过
找了半天才发现
嘿嘿 --------------------编程问答-------------------- 有好方法吗?
补充:.NET技术 , ASP.NET