Asp.net 将值从子窗口传递给父窗口
下面是我的场景:我有一个父网页,在javascript代码中打开一个新窗口。此新窗口是服务器端的aspx页面。这个子页面需要在数据库中保存一些数据,保存后返回一个ID。现在,我需要将这个ID从子服务器页面传递到父服务器的javascript 基本上,我需要子服务器代码来触发: 1) 将该值返回到父页面的javascript代码 2) 自我封闭Asp.net 将值从子窗口传递给父窗口,asp.net,javascript,parameter-passing,Asp.net,Javascript,Parameter Passing,下面是我的场景:我有一个父网页,在javascript代码中打开一个新窗口。此新窗口是服务器端的aspx页面。这个子页面需要在数据库中保存一些数据,保存后返回一个ID。现在,我需要将这个ID从子服务器页面传递到父服务器的javascript 基本上,我需要子服务器代码来触发: 1) 将该值返回到父页面的javascript代码 2) 自我封闭 可接受的方法是什么?如果您在子窗口中,并且假设父窗口具有object childResult: 在父页面中设置变量: var dbID; functio
可接受的方法是什么?如果您在子窗口中,并且假设父窗口具有object childResult:
在父页面中设置变量:
var dbID;
function handleNewDBID(dbID) { alert("lookit me, i got an ID! " + dbID); }
当DB调用从打开的窗口返回时,将其放入打开的窗口的load事件(如果使用jquery或其他框架,则放入ready事件):
在打开的窗口上:
window.opener.handleNewDBID(<%=newID%>);
window.opener.handleNewBid();
在Jquery中,我如何区分“当DB调用从打开的窗口返回时”?当然,我可以通过各种方式检查newID是否为null..这就是你的意思吗?修改了答案以使用全局函数显示。您的JQuery代码可以存在于其中。(我认为没有一种更简单的方法可以做到这一点,而不使函数全球化。)
function handleNewDBID(dbID) { alert("lookit me, i got an ID! " + dbID); }
window.opener.handleNewDBID(<%=newID%>);