2013-02-01 144 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”]。没有工作。 –