Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.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
Javascript jquery从iframe访问window.parent的数据()_Javascript_Jquery_Html_Iframe - Fatal编程技术网

Javascript jquery从iframe访问window.parent的数据()

Javascript jquery从iframe访问window.parent的数据(),javascript,jquery,html,iframe,Javascript,Jquery,Html,Iframe,在父窗口中,我有: <input type=text size=100 id="picker1" data-listoption="1" data-type="size"> 然后在我的框架内 <script> $(document).ready(function(){ var parent_input = $("#picker1", window.parent.document); var searchdata = $(parent_input

在父窗口中,我有:

<input type=text size=100 id="picker1" data-listoption="1" data-type="size">

然后在我的框架内

<script>
  $(document).ready(function(){

    var parent_input = $("#picker1", window.parent.document);
    var searchdata = $(parent_input).data();
        var listtype = $(parent_input).data('listoption');
    console.log(searchdata);
        console.log(listtype);


});     

$(文档).ready(函数(){
var parent_input=$(“#picker1”,window.parent.document);
var searchdata=$(父输入).data();
var listtype=$(父输入).data('listoption');
console.log(searchdata);
console.log(listtype);
});     


控制台中的两个输出均为空。这里缺少什么?

Jquery不提供使用窗口的父级来确定选择器范围的功能。但是您可以使用
parent
从子级访问父级上的jQuery

尝试:


工作示例

您无法访问另一个(父)帧的dom。您确定可以通过父窗口确定选择器的作用域吗?不确定您试图用此实现什么,但您是否尝试过html()而不是data()?另外,它是否在同一个域中?可能它不可访问。尝试调用
parent\u input.data('listoption')
而不调用
$(parent\u input)
,它已经是jQuery对象了。我可以使用parent\u input.attr('data-listoption')获取单个数据值;我得到TypeError:window.opener在使用window.opener尝试时为null。$(“#picker1”)@BethB我提供了一把小提琴,但我可能误解了您的请求,我以为您使用的是新窗口而不是iframe。
窗口。opener
用于访问弹出窗口的打开窗口。但是只要使用
window.parent
或只是
parent
就可以了,我已经编辑了您在这方面的答案。显然,它还需要将jQuery嵌入到父窗口中。@CBroe感谢您的帮助!
var parent_input = parent.$("#picker1");
var searchdata = $(parent_input).data();
var listtype = $(parent_input).data('listoption');
console.log(searchdata);
console.log(listtype);