如何在JQuery中将JQuery变量传递给$ _POST键

时间:2018-05-08 06:20:10

标签: javascript php jquery html

正如我在标题中指出的那样,我正在使用JQuery来处理$ _POST请求 示例代码是:

<script type="text/javascript">
  $(document).ready(function(){
        var goal_type=[];

        goal_type[1]="<?php echo $_POST['goal_type1'];?>";
        goal_type[2]="<?php echo $_POST['goal_type2'];?>";
        goal_type[3]="<?php echo $_POST['goal_type3'];?>";
        goal_type[4]="<?php echo $_POST['goal_type4'];?>";
        goal_type[5]="<?php echo $_POST['goal_type5'];?>";
        goal_type[6]="<?php echo $_POST['goal_type6'];?>";
        goal_type[7]="<?php echo $_POST['goal_type7'];?>";
        goal_type[8]="<?php echo $_POST['goal_type8'];?>";
  });
</script>

我的要求是:

<script type="text/javascript">
    $(document).ready(function(){
        var goal_type=[];

       for(var i=1;i<=8;i++)
       {
        var goals="goal_type"+i;
        goal_type="<?php echo $_POST["'+goals+'"]?>";
        console.log("Value is:"+goal_type);
       }      
});
</script>

但它在控制台上打印为空白。 请告诉我如何将&#34;目标&#34;(JQUERY VARIABLE)传递到$ _POST [&#39;&#39;]

2 个答案:

答案 0 :(得分:0)

我认为最简单的方法是使用json_encode()这样:

users:
       Travid2:
                travidDataKey:"Travid Data"

然后您可以使用与<script type="text/javascript"> $(document).ready(function(){ var goal_type=<?= json_encode($_POST) ?>; console.log(goal_type); //look at your console }); </script> 完全相同的key来访问它们。

$_POST

如果你想过滤传递var someGoal = goal_type[1];,那么你必须创建另一个数组并将所需的$_POST键传递给它,然后你可以将它作为json对象打印到你的{{1}代码。

$_POST

答案 1 :(得分:0)

这只是你的语法错误。

goal_type="<?php echo $_POST["'+goals+'"]?>";

它不返回任何内容,因为键$_POST没有'+goals+'值,因此goal_type只是空的。

试试这个:

<script type="text/javascript">
    $(document).ready(function(){
        var goal_type=[];

        <?php for($i=1; $i<=8; $i++) : ?>
            goal_type[<?php echo $i; ?>] = "<?php echo $_POST['goal_type'.$i]; ?>";
            console.log("Value is: " + goal_type[<?php echo $i; ?>]);
        <?php endfor; ?>
    });
</script>