将值从jquery传递到同一页面中的php变量

时间:2016-07-01 05:32:28

标签: javascript php jquery ajax

我之前已经问过类似的问题,但我没有看到适合我的问题的答案。我有一个div触发一个存储id的jquery脚本。我可以将id转换为jquery中的变量,但我想将该id分配给存在于同一页面上的PHP变量。

到目前为止,这就是我所拥有的。这是index.php中存在的div:

echo '<div id="'.$unit_id.'" class="dropdown unit '.$unit_size.' unit-'.$unit_number.' '.$unit_status.' data-unit-id-'.$unit_id.'">';

这是我从functions.php呼叫的jquery:

<script>
    $('.unit.available').click(function(){
        var unit_id = $(this).attr('id');
        $.ajax({
            type: 'post',
            data: {id: unit_id}, //Pass the id
        });
    });
</script>

我想将unit_id传递给名为index.php的{​​{1}}上的变量,但我似乎找不到进入那里的方法。我尝试过使用帖子,但确实没有提交表单。这只是点击潜水。

4 个答案:

答案 0 :(得分:0)

将id分配给div id属性,如下所示:使用:

<div id="<?php echo $unit_id; ?>" class="dropdown unit"></div>

答案 1 :(得分:0)

您必须更改id中的<div>并将其设置为获取jQuery发送的变量。除此之外,你的jQuery脚本看起来很好。

我将如何做到这一点:

# Fetch the variable if it's set.
<?php $unit_id = (isset($_POST["id"])) ? $_POST["id"] : null; ?>

# Echo it as the id of the div.
<div id = "<?= $unit_id; ?>" class = "dropdown unit"></div>


编辑:

上面的PHP代码等于:

# Fetch the variable if it's set.
<?php
    if (isset($_POST["id"])):
        $unit_id = $_POST["id"];
    else:
        $unit_id = null;
    endif;
?>

答案 2 :(得分:-1)

试试这个希望它会起作用

<div id="<?php echo $unit_id;?>" class="dropdown unit"></div>


<script>
    $('.unit.available').click(function(){
        var unit_id = $(this).attr('id');
        $.ajax({
            type: 'post',
            'id='+unit_id, //Pass the id
        });
    });
</script>

答案 3 :(得分:-1)

你在div ID中的'$ unit_id'是什么意思。只需将代码放在PHP Tag中,而在HTML页面中使用PHP就可以使用PHP标记内的代码。

可用PHP标记:<?php echo $unit_id ?>(或)<?=$unit_id ?>(短标记)。

用以下内容更改您的div:

<div id="<?=$unit_id ?>" class="dropdown unit"></div>

<div id="<?php echo $unit_id ?>" class="dropdown unit"></div>

然后你的脚本将起作用

<script>
    $('.unit.available').click(function(){
        var unit_id = $(this).attr('id');
       // to check whether value passing or not 
       console.log(unit_id);
        $.ajax({
            type: 'post',
            data: {id: unit_id}, //Pass the id
        });
    });
</script>