模态窗口返回值解决方法
模态窗口返回值ASPX页面用JS的window.showModalDialog弹出一个窗口怎么将这个窗口的返回值付给ASPX页面的
模态窗口返回值
ASPX页面用JS的window.showModalDialog弹出一个窗口
怎么将这个窗口的返回值付给ASPX页面的控件,控件为服务器端的
谢谢
[解决办法]
session 或者 刷新父页的时候改变地址用?传个值
[解决办法]
this.ClientScript.RegisterStartupScript(this.GetType(), "message", "<script language='javascript'>window.opener.document.all['接收值的控件名'].value='" + 要传输的值 + "';window.close()</script>");
[解决办法]
返回的值你要是取到了,通过JS修改服务器端控件的值应该不难吧。。
服务器端控件如果是有value等可以提交的值的话直接修改了
自定义的控件啊啥的,存到一个隐藏域里也行
[解决办法]
在目标窗口(就是你的模态窗口中的页面) 用脚本返回 例如在Button的click事件中
C# codeprotected void btn2_Click(object sender, EventArgs e) { this.ClientScript.RegisterStartupScript(this.GetType(), "", "<script type=\"text/javascript\" language=\"javascript\">window.returnValue='" + strValue + "'" + ";window.close();</script>"); }
[解决办法]
[解决办法]
[解决办法]
学习
[解决办法]
嗯,用window.opener.document. 可更改控件值
[解决办法]
楼主技术分 9700+ ,问这问题是不是故意?
[解决办法]
子页
C# code public void AjaxRunJs(string js) { ClientScript.RegisterStartupScript(this.GetType(), "ajaxjs", string.Format("{0}", js), true); }///GridView行绑定事件里加上 AjaxRunJs(string.Format("window.returnValue='{0}$$$';window.close();" , 你要取的第一个值,你要取的第二个值));
[解决办法]
上面已经说了很多方面.有时如果读不打服务器控件,可以考虑用"服务器控件.ClientID"来读取,祝好运
[解决办法]
window.opener.documet.getElementById("").value=""
var obj=new Object();
obj.name="";
obj.age="";
window.showModalDialog("test.htm",obj,'status=no;');
获取参数
var arguments=window.dialogArguments;
var name=arguments.name;
alert(name);
[解决办法]
另一个页面:
window.returnValue="";
window.close();
[解决办法]
刷新url
不刷新ajax。。
[解决办法]
服务器端
C# code Response.Write("<script language=javascript>var arrArgs = new Array('"+this.PIC.Text+"');window.returnValue=arrArgs;window.close();</script>");
[解决办法]
权威父子窗体,本贴内综合所有刷新、传值
[解决办法]
[解决办法]
楼主你好,这是我最近在公司做的一个小模块,希望能对你有所帮助,我的具体做法是这样的,点击一个文本框(输入类型为input 的textbox ,设置runat="server"),弹出一个模态窗口,在窗口中有个下拉列表(DropdownList),选择某个值,然后将值返回给页面中的textbox。原窗口的名称为Write.aspx,弹出的模态窗口的名称为GetReceicer.aspx。
首先在write.aspx页面中插入如下的JS,以显示模态窗口的返回值:
<script language="javascript" type="text/javascript">
var str;
function Txt_Receiver_onclick()
{
str = window.showModalDialog("GetReceiver.aspx","","dialogWidth:450px;dialogHeight:200px;scroll:no;status:no") ;
if(str="undefined")
{
document.getElementById("Txt_Receiver").value="";
}
else
document.getElementById("Txt_Receiver").value=str;
}
</script>
再在弹出的模态窗口中取出返回值,源代码如下:
<input type="submit" runat="server" class="button" value="确定" onclick="javascript:window.parent.returnValue=(document.getElementById('Ddl_Receiver').options[document.getElementById('Ddl_Receiver').selectedIndex].value);window.close();" style="width: 69px" id="Button1" onmouseup="Pre_check()" />
上述代码的作用是点击按钮,取出下拉框中的值(取任何控件的值都是可以实现的),onmouseup="Pre_check()" 是我自己写的一段判断用户是否选择的JS脚本,你可能用不到。
这样就可以取出弹出的模态窗口中具体控件的值了。其实我觉得不管是何控件一般都可以实现的,基本思想差不多。