【问题标题】:passing parameter from .php file to .js file将参数从 .php 文件传递​​到 .js 文件
【发布时间】:2012-02-12 01:19:39
【问题描述】:

如何将数组从 php 文件调用到 .js 文件?

到目前为止,我的 functions.php 中有这个。

function background(){

  global $post;
  $bgsrc = get_post_meta($post->ID, 'background', true);
   if($bgsrc != null){
    $bgsrc = explode("\n", $bgsrc);
    $ctr=0;
    foreach($bgsrc as $value){ ?> 
     <input type="hidden" value="<?php echo $value; ?>" class="bgimgsrc" id="bgimgsrc-<?php echo $ctr++; ?>" >
    <?php }
   }
 }

在我的 .js 文件中,我有这个,但它不起作用..

function backgroundsizer(){
 var ctr= {image:jQuery('.bgimgsrc').val()}

 jQuery.supersized({
  // Functionality
  slide_interval          :   10000,  // Length between transitions
  transition              :   1,    // 0-None, 1-Fade, 2-Slide Top, 3-Slide Right, 4-Slide Bottom, 5-Slide Left, 6-Carousel Right, 7-Carousel Left
  transition_speed  : 900,  // Speed of transition

  // Components       
  slide_links    : 'blank', // Individual links for each slide (Options: false, 'num', 'name', 'blank')
  slides      :   ctr

 });
}

【问题讨论】:

    标签: jquery parameter-passing


    【解决方案1】:

    试试:

    function backgroundsizer(){ var valArr = new Array(); jQuery(".bgimgsrc").each(function() { valArr.push(jQuery(this).val()); }); //you will have values in "valArr" array, you can manipulate it, like var joinedVals = valArr.join(","); // just an example

    希望对你有帮助

    【讨论】:

    • 谢谢!我用valarr.push({image : jQuery(this).val() });替换了:valArr.push(jQuery(this).val());,它就像一个魅力:)
    【解决方案2】:

    您不能直接从 javascript 中使用 php 变量。如果你想使用这些值,那么你必须在运行时使用 php 值来制作 js 变量

    <?php
    $weight = 10;
    ?>
    <script>
    var weight = <?php echo $weight;?>;
    alert(weight);
    </script>
    

    【讨论】:

      【解决方案3】:

      您可以考虑使用 jQuery 从 PHP 请求数据,例如通过 AJAX 请求。 然后可以相应地解析和使用该数据。

      它可能会像这样工作:

      1. jQuery 使用 AJAX 向 PHP 脚本发送请求。
      2. PHP 脚本返回请求的数据,在本例中是一个数组,可以表示为一个字符串,其元素是分开的
      3. jQuery 接收字符串并将其解析为数组,为此,您可以使用正则表达式。

      希望这会有所帮助。祝你有美好的一天。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-07
        • 2011-08-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多