douma5954 2012-06-02 18:50
浏览 16
已采纳

如何检测PHP中通过POST发送的提交按钮

Problem:

To detect with jQuery which submit button was pressed after the form is sent through PHP.

Scenario:

I have three buttons:

  1. submit-update1
  2. submit-update2
  3. submit-update3

If $_POST['submit-update1'] is set in PHP then jQuery should add a class to a div with id "collapseOne". For instance:

if (PHP POST submit button 1 is submitted)
{
    $('#collapseOne').addClass('in');
}

if (PHP POST submit button 2 is submitted)
{
    $('#collapseTwo').addClass('in');
}

if (PHP POST submit button 3 is submitted)
{
    $('#collapseThree').addClass('in');
}

DIV elements:

<div class="accordion" id="accordion2">
    <div class="accordion-group">
      <div class="accordion-heading">
        <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseOne">
          Title 1
        </a>
      </div>
      <div id="collapseOne" class="accordion-body collapse">
        <div class="accordion-inner">
            Text here
        </div>
      </div>
    </div>
    <div class="accordion-group">
      <div class="accordion-heading">
        <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseTwo">
          Title 2
        </a>
      </div>
      <div id="collapseTwo" class="accordion-body collapse">
        <div class="accordion-inner">
          Text here
        </div>
      </div>
    </div>
    <div class="accordion-group">
      <div class="accordion-heading">
        <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordion2" href="#collapseThree">
          Title 3
        </a>
      </div>
      <div id="collapseThree" class="accordion-body collapse">
        <div class="accordion-inner">
          Text here
        </div>
      </div>
    </div>
</div>

Submit buttons:

<button type="submit" id="submit-update1" name="submit-update1">Update 1</button>
<button type="submit" id="submit-update2" name="submit-update2">Update 2</button>
<button type="submit" id="submit-update3" name="submit-update3">Update 3</button>

Any advice is welcome and thanks in advance!

  • 写回答

3条回答 默认 最新

  • duangan9251 2012-06-02 19:02
    关注
      <form method="post" id="many_buttons">
        <input type="hidden" id="submit_button" name="button_pressed" />
    
        <button type="submit" id="submit-update1" name="submit-update1">Update 1</button>
        <button type="submit" id="submit-update2" name="submit-update2">Update 2</button>
        <button type="submit" id="submit-update3" name="submit-update3">Update 3</button>
      </form>
    
      <script>
      $('#many_buttons button[type=submit]').click(function(){
        $('#submit_button').val($(this).attr('name'))
      })
      </script>
    

    Then in server side:

      <?php
      if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        $button = $_POST['button_pressed'];
    
        if ($button == 'submit-update1')
          $div = 'collapseOne';
        elseif ($button == 'submit-update2')
          $div = 'collapseTwo';
        elseif ($button == 'submit-update3')
          $div = 'collapseThree';
      }
      ?>
    

    Finally you print this javascript:

      <?php if (!empty($div)) : ?>
      <script>$('#<?php echo $div ?>').addClass('in')</script>
      <?php endif ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算