父页面(CangKuEdit.aspx)中,按“新增”(id=imgbtnAdd),弹出CangKuAdd.aspx子页面。
子页面(CangKuAdd.aspx )中,按“确定”(id=btnSubmit),新增数据到数据库、关闭子页面、刷新父页面DataGrid 以反映数据的异动,注意只能刷新DataGrid,其他控件里输入的值要保留!
------------
cnblogs是有这个例子的,但是在子页面点击确定时,窗体未关闭,并且未刷新父页面datagrid.
Response.Write("<script>window.opener.document.all.imgbtnAdd.fireEvent('ondblclick');window.close();</script>");
请大家参考
http://www.cnblogs.com/carekee/articles/1738901.html
请哪位大哥 给个具体的事例。小弟新学。。。
14 个解决方案
#1
这个实现起来一言难尽,不过既然你要做局部刷新那就先学学ajax,然后用把取回来的数据通过js填充到DataGrid位置,或者把父页面的DataGrid放iframe里显示,关闭子页面的时候刷新父页面里的这个iframe
#2
WINFORM/WEBFROM?showmudlediaolog()返回后重新帮顶
#3
这个好做,你先用ajax,.net中简单,画一个updatepanel,将grid放入中,子窗口中关闭时调用填充grid事件。这个可以用js模拟点击某按钮或是直接调用父窗口下的__doPostBack(eventTarget, eventArgument)
#5
我是aspx页面。 各位大哥 能给出具体的代码么?谢谢大家了。。真的很急 ajax没怎么学过。。。
#6
ajax上手很快的。
实在不行 就按1L说的 嵌套个框架
#7
父页给个LINKBUTTON 在后台为其添加点击事件,刷新GRID,你在子页parent.document.getElementById("LINKBUTTON 的ID").onclick();
#8
PageTool.AddJavaScript(this, "parent.document.getElementById('Button2').onclick();window.close();");
Response.Write("<script>parent.document.getElementById('Button2').onclick();window.close();</script>");
请问我如上2个,都在子页的button里 为什么没反映呢? 子页的窗体都未关闭。
Response.Write("<script>parent.document.getElementById('Button2').onclick();window.close();</script>");
请问我如上2个,都在子页的button里 为什么没反映呢? 子页的窗体都未关闭。
#9
新增成功以后调用下面的代码:
Page.ClientScript.RegisterStartupScript(this.GetType(), "scripts", "<script>opener.location.reload();</script>");
重新刷新父窗口,这样父页面中的datagrid自然也就跟着重新加载了……
Page.ClientScript.RegisterStartupScript(this.GetType(), "scripts", "<script>opener.location.reload();</script>");
重新刷新父窗口,这样父页面中的datagrid自然也就跟着重新加载了……
#10
大哥哥 我就是不想整个刷新父窗体呀。。
不然我的很多东西都没了。。
不然我的很多东西都没了。。
#11
建议用JQuery AJAX……
#12
楼主可以用网页对话框在一个父页面弹出网页对话框,然后关闭网页对话框刷新父页面的datagrid.?我做过些这样的例子
#13
这个效果还是比较好的,JQuery AJAX……都可以不用
#14
那你就用__doPostBack(“”,“”)
#1
这个实现起来一言难尽,不过既然你要做局部刷新那就先学学ajax,然后用把取回来的数据通过js填充到DataGrid位置,或者把父页面的DataGrid放iframe里显示,关闭子页面的时候刷新父页面里的这个iframe
#2
WINFORM/WEBFROM?showmudlediaolog()返回后重新帮顶
#3
这个好做,你先用ajax,.net中简单,画一个updatepanel,将grid放入中,子窗口中关闭时调用填充grid事件。这个可以用js模拟点击某按钮或是直接调用父窗口下的__doPostBack(eventTarget, eventArgument)
#4
#5
我是aspx页面。 各位大哥 能给出具体的代码么?谢谢大家了。。真的很急 ajax没怎么学过。。。
#6
ajax上手很快的。
实在不行 就按1L说的 嵌套个框架
#7
父页给个LINKBUTTON 在后台为其添加点击事件,刷新GRID,你在子页parent.document.getElementById("LINKBUTTON 的ID").onclick();
#8
PageTool.AddJavaScript(this, "parent.document.getElementById('Button2').onclick();window.close();");
Response.Write("<script>parent.document.getElementById('Button2').onclick();window.close();</script>");
请问我如上2个,都在子页的button里 为什么没反映呢? 子页的窗体都未关闭。
Response.Write("<script>parent.document.getElementById('Button2').onclick();window.close();</script>");
请问我如上2个,都在子页的button里 为什么没反映呢? 子页的窗体都未关闭。
#9
新增成功以后调用下面的代码:
Page.ClientScript.RegisterStartupScript(this.GetType(), "scripts", "<script>opener.location.reload();</script>");
重新刷新父窗口,这样父页面中的datagrid自然也就跟着重新加载了……
Page.ClientScript.RegisterStartupScript(this.GetType(), "scripts", "<script>opener.location.reload();</script>");
重新刷新父窗口,这样父页面中的datagrid自然也就跟着重新加载了……
#10
大哥哥 我就是不想整个刷新父窗体呀。。
不然我的很多东西都没了。。
不然我的很多东西都没了。。
#11
建议用JQuery AJAX……
#12
楼主可以用网页对话框在一个父页面弹出网页对话框,然后关闭网页对话框刷新父页面的datagrid.?我做过些这样的例子
#13
这个效果还是比较好的,JQuery AJAX……都可以不用
#14
那你就用__doPostBack(“”,“”)