2013-02-01 143 views
0

我試圖通過FancyBox傳遞JavaScript變量,以便我可以在出現的窗口中訪問它們。到目前爲止,我有以下代碼:如何通過FancyBox傳遞JavaScript變量?

<script type="text/javascript"> 
    var s; 
    var e; 
    var fancyboxdata = new Array(); 
    $(function(){ 
     $('#post_code').blur(function(){ 
      s = $('#post_code').val(); 
     }); 
    }); 
    function map_routes(e){ 
     if ((s.length !== 0) && (e.length !== 0)) { 
      document.getElementById('map_routes_button').style.visibility="visible"; 
      fancyboxdata[s] = s; 
      fancyboxdata[e] = e; 
     } else { 
      document.getElementById('map_routes_button').style.visibility="hidden"; 
     } 
    } 
</script> 
... 
<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a.iframe_maps").fancybox({ 
      ajax: { 
       type: "POST", 
       data: fancyboxdata 
      }, 
      'hideOnContentClick': true, 
      'height': 600, 
      'padding': 0, 
      'width': 700, 
      'type': 'iframe' 
     }); 
    }); 
</script> 

在這個階段,我知道fancyboxdata數組包含的數據,但我不能確定在的fancybox功能Ajax的參數,這是應該通過數組變量。

在出現的窗口中,我有:

<?php 

print_r($_POST); 

echo $_POST['s']; 

?> 
<script> 
    (function() { 
     alert(fancyboxdata[s]); 
    })(); 
</script> 

,似乎沒有什麼比在調試器空數組和錯誤等。

任何想法?

+0

什麼錯誤,在調試器? – vodich

+0

只是說明fancyboxdata數組變量無法找到。 而在PHP:

嚴重性:注意

消息:未定義指數:■

文件名:訂票/ maps.php

行號:5

回答

0

難道你不只是像這個問題一樣聽取表單和AJAX調用的提交(使用jQuery)嗎?

Can't get form data to post via AJAX using Fancybox

+0

我可能會,如果我有什麼想法你剛纔說過!我對JavaScript,Ajax或jQuery並不熟悉。 –

+0

我沒有使用表格。 –

0

使用像data: "phpVar="+fancyboxdata

fancyboxdata(這是你的JavaScript數組變量)和

phpVar {會在你的PHP頁面調用。它是持有fancyboxdata。}

for codeigniter-fancybox您可以嘗試下面的代碼。可能是它」

$.fancybox({ 
      'width'    : 900, 
      'height'   : 390, 
      'autoScale'   : true, 
      'transitionIn'  : 'none', 
      'transitionOut'  : 'none', 
      'href'    : 'page.php?id='+9, 
      'type'    : 'iframe' 
     }); 

,然後用$ _GET [ '身份證']

+0

我剛剛試過,CodeIgniter報告說phpVar是一個未定義的索引。 –

+0

你在你的php頁面中使用了$ _POST [「phpVar」]嗎? – ripa

+0

是的,它沒有工作。我試過了:print_r($ _ POST),$ phpVar和$ _POST [「phpVar」]。沒有工作。 –