如何使用jQuery完成以下操作:打开一个弹出窗口,当单击子窗口中的链接时,该窗口会向父窗口返回值,关闭子窗口,然后让父窗口自动提交基于返回的值?
我意识到jQuery Dialog是一个流行的解决方案,但我需要一个弹出窗口,因为窗口的内容需要是可导航的,我想避免在jQuery对话框中使用iframe。
弹出窗口将用于收集多个值,最终作为分隔字符串返回给父级,但此数据收集需要在提交父窗口的表单之前进行。如果“实体选择器”有标准设计模式,那就是它。
这需要在IE8,FF3.6,Safari 4和Chrome 5中运行。
谢谢, 标记
答案 0 :(得分:7)
这是我的解决方案:
var parent = $(parent.document.body);
$(parent).find('input#valStore').val(theVal);
$(parent).find('form#myForm').submit();
window.close();
答案 1 :(得分:6)
在新打开的浏览器窗口中,您可以尝试类似
的内容$("#mylink").click(function(){
value = /* get some value */
window.opener.$("#myform .somehiddenfield").val(value);
window.opener.$("#myform").submit();
window.close();
});
免责声明:我没有在任何浏览器中对此进行测试。