Christoffer Christoffer - 3 months ago 14
Javascript Question

How to open popup and populate it with data from parent window?

How can I use JavaScript/jQuery to populate a popup-window with data from JS-variables in the parent page?

In my example I have an array of filenames. I list at most five in the parent window and if there's more I want to provide a link that opens a popup window and lists each post in the array.

So if I open a popup that contains a

<ul id="all_files"></ul>
, how can I add
<li>
-items to that list?

Answer

Parent Window:

<span id="popup"> Click to Open Popup </span>

<script type="text/javascript">
var ar=new Array("Item 1", "Item 2", "Item 3", "Item 4", "Item 5", "Item 6", 
                 "Item 7", "Item 8", "Item 9", "Item 10");
function getArray(){
    return ar;
}
$(document).ready(function(){
    $("span#popup").click(function(){
    	var p=window.open("Popup.html");
    });
});
</script>

Popup Window:

<ul id="list"></ul>
<script type="text/javascript">
    if(window.opener && !window.opener.closed){
    	var ar= window.opener.getArray();
    	var items="";
    	for(var i=0;i<ar.length;i++){
    		items +="<li>" + ar[i] + "</li>";
    	}
    	$("ul#list").html(items);
    }
</script>
Comments