代码之家  ›  专栏  ›  技术社区  ›  Saeed Heidarizarei

通过Java脚本将值发布到操作页[关闭]

  •  -1
  • Saeed Heidarizarei  · 技术社区  · 6 年前

    如何通过Java脚本将值发布到动作页?

    测试.php:

    <form action="/shop/cart.php" method="post">
        <input type="hidden" name="price" value="300"/>
        <div name="mysubmitbutton" id="mysubmitbutton" class="customButton" onclick="this.parentNode.submit()">
            Button Text
        </div>
    </form>
    

    购物车.php:

    <?php 
        if(isset($_POST['mysubmitbutton'])){
          echo (int)$_POST['price']; 
        }
    ?>
    

    但是cart.php中没有任何输出,因为我是用javascript发送的,那么如何在cart.php中获得值300和echo呢?

    2 回复  |  直到 6 年前
        1
  •  1
  •   msg    6 年前

    div 如果不是表单元素,则不会发送值,因此不会输入 if 阻止。将php更改为:

    if(isset($_POST['price'])){
      echo (int)$_POST['price']; 
    }
    
        2
  •  0
  •   Eugene Tsakh    6 年前

    PHP在服务器上执行,而JS在浏览器中执行。您需要的是:

    document.querySelector('form').addEventListener('submit', (e) => {
      e.preventDefault();
      console.log(e.currentTarget.querySelector('[name="price"]').value);
    })