Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net jQuery弹出窗口将值返回到父级_Asp.net_Javascript_Jquery_Ajax_Popup - Fatal编程技术网

Asp.net jQuery弹出窗口将值返回到父级

Asp.net jQuery弹出窗口将值返回到父级,asp.net,javascript,jquery,ajax,popup,Asp.net,Javascript,Jquery,Ajax,Popup,如何使用jQuery完成以下操作:打开一个弹出窗口,在单击子窗口中的链接时将值返回给父窗口,关闭子窗口,然后让父窗口根据返回的值自动提交表单 我意识到jQuery对话框是一种流行的解决方案,但我需要一个弹出窗口,因为窗口的内容需要可导航,并且我希望避免在jQuery对话框中使用iframe 弹出窗口将用于收集多个值,最终作为分隔字符串返回给父窗口,但此数据收集需要在提交父窗口表单之前进行。如果有一个“实体选择器”的标准设计模式,这就是它 这需要在IE8、FF3.6、Safari 4和Chrome

如何使用jQuery完成以下操作:打开一个弹出窗口,在单击子窗口中的链接时将值返回给父窗口,关闭子窗口,然后让父窗口根据返回的值自动提交表单

我意识到jQuery对话框是一种流行的解决方案,但我需要一个弹出窗口,因为窗口的内容需要可导航,并且我希望避免在jQuery对话框中使用iframe

弹出窗口将用于收集多个值,最终作为分隔字符串返回给父窗口,但此数据收集需要在提交父窗口表单之前进行。如果有一个“实体选择器”的标准设计模式,这就是它

这需要在IE8、FF3.6、Safari 4和Chrome 5中使用

谢谢,
在新打开的浏览器窗口中标记,您可以尝试以下操作

$("#mylink").click(function(){ 
        value = /* get some value */
        window.opener.$("#myform .somehiddenfield").val(value); 
        window.opener.$("#myform").submit();
        window.close(); 
}); 
免责声明:我没有在任何浏览器中测试过这一点。

以下是我的解决方案:

var parent = $(parent.document.body);
$(parent).find('input#valStore').val(theVal);
$(parent).find('form#myForm').submit();
window.close();

为什么需要窗口的内容可导航?如果您希望为一个页面的表单提供弹出窗口,那么这没有意义,为什么要让用户导航到其他地方?因为弹出窗口将用于收集多个值,最终将作为分隔字符串返回给父窗口,但此数据收集需要在提交父窗口的表单之前进行。如果有一个“实体选择器”的标准设计模式,这就是它。谢谢你的回答,但是“获取一些价值”对我来说有点模糊。例如,如果该值来自应用程序的会话状态,该怎么办?在您的示例中,我将如何分配它?然后您将如下呈现:value=''。但是如果值来自会话状态,为什么需要在窗口之间传递它呢?我原以为您会从子窗口中的某个输入字段(文本框)获取它。然后是value=$('input.sometextbox').val();我编辑了我原来的问题来澄清。弹出窗口用于浏览系统以收集各种实体引用,然后将它们作为分隔字符串传递回父级。您可以将其视为类似于购物车,其中所选项目以会话状态存储。