如何检查它是否是foreach循环中的最后一个元素

时间:2018-05-30 11:50:43

标签: javascript php loops foreach

我有一个foreach循环,它获取了作业名称。在每个工作旁边,我都有一个按钮"完成"。当用户单击完成时,它会从页面隐藏作业。用户可以按任何顺序执行作业,这样他可以先点击,然后再点击。

完成所有作业后,我希望用户自动转到下一个标签。

我的问题是如何检查这是否是foreach循环中的最后一项工作。用户可以按任何顺序隐藏作业;所以我如何确定它是否是最后一份工作,而不是去下一个标签。

这是循环。

foreach ($array2 as $key => $value) { ?>
    <div class="panel panel-default center-block">
        <div class="panel-body">
            <div class=row>
                <div class="col-md-4">
                    <h2 style="color:orangered" class="text-center">SIP</h2>
                    <img alt="" class="center-block"style="width:20%;"src="../../css/collecting/logo.png">
                    <h2 class="text-center"><?php echo $value['name_dvp']; ?></h2>
                    <h3 class="text-center">(<?php echo $value['region_dvp']; ?>)</h3>
                    <h3 class="text-center">D<?php echo $value['id_dvp']; ?></h3>
                    <h2 style="color:orangered" class="text-center"><?php echo $value['maintenancelocation_dvp']; ?></h2>
                </div>


                <div class="col-md-2">
                    <img alt="" class=" center-block developerlocationselection" style="width:35%; margin-top:10%;" src="../../css/collecting/route-select.png">

                </div>
            </div>
        </div>
    </div>
    <?php

}

的Javascript

<script>
  $(document).ready(function () {
    $(".developerlocationselection").click( function () {
        alert(2);
    });
  });
</script>

2 个答案:

答案 0 :(得分:3)

试试这个:

asRole

答案 1 :(得分:2)

我认为更好的选择是遵循@musefan所说的。否则你可以尝试这样的事情:

$array_length = count($array2);
$current_index = 0;

foreach ($array2 as $key => $value) {

   $current_index++;

   if(current_index == $array_length){
      echo 'I found the last job!';
   }

   //Do your stuff
}