2013-09-26 54 views
1

我有一個關於從父瀏覽器窗口發送一個額外的參數來彈出孩子的問題,到目前爲止,我已經創建了這個代碼。從父窗口發送參數到子窗口

家長:

function addItem(id_value) 
{ 
var newUrl = $('#add-'+id_value).attr('data-url'); 
var checkPort = $('#add-'+id_value).attr('id'); 

$('#add-'+id_value).click(function(){ 

    if(checkPort == 'add-fracht_1_pol_id' || checkPort == 'add-fracht_1_pod_id' || checkPort == 'add-fracht_2_pol_id' || 
     checkPort == 'add-fracht_2_pod_id' || checkPort == 'add-fracht_3_pol_id' || checkPort == 'add-fracht_3_pod_id') 
    { 
     window.opener.setParam(checkPort); 
    } 

    window.open(newUrl, 'newPerson', config='height=1500, width=1000, toolbar=no, menubar=no, scrollbars=yes'); 

    return false; 
}); 
} 

兒童:

$(document).ready(function(){ 

var name = window.name; 

var val = Boolean(false); 
var check = setParam(val); 
alert(check); 

if(name == 'newPerson') 
{ 
    $('#save').remove(); 
    $('#save_stay').show(); 
    $('.form-actions').append('<input type="hidden" value="1" name="pop" />'); 
}  
else 
{ 
    $('#save').show(); 
    $('#save_stay').remove(); 
} 
}); 

但這並不和IM卡:(

+0

您可以將這些數據作爲URL中的額外參數傳遞給您?這不是你嘗試這樣做的方式,但它絕對是標準的HTTP並保證可以正常工作。 (只要瀏覽器不阻止你的彈出窗口,這將是一個不同的問題。) –

回答

0

您可以通過只追加到URL發送任意數量的參數作爲GET參數。

如果URL是這樣的:

www.example.com/page.php 

您可以添加參數如下:

www.example.com/page.php?param=1 

這可以在以後通過PHP或訪問JS

(PHP )

if($_GET) 
    echo $_GET['param']; 
+0

安全問題我想,我試圖發送某個ID,並且不想讓人們搞砸它。 –