如何在同一个按钮上运行 php 操作和 javascript 代码

Posted

技术标签:

【中文标题】如何在同一个按钮上运行 php 操作和 javascript 代码【英文标题】:how to run php action and javascript code on a same button 【发布时间】:2015-12-16 18:03:57 【问题描述】:
<div id="askfriend">
      <form action="friend.php" method="post">
       <input type="submit" id="requestbutton" name="requestbutton2" value="Send Friend Request" style="margin-top:5%; margin-left:10%; height:50%;" onclick="change()"/>
       <input type="submit" id="cancelbutton" name="cancelbutton2" value="Cancel" disabled style="margin-top:5%; margin-left:10%; height:50%; width:30%;" onclick="changeback()"/>
      </form>
       <?php
        if(isset($_POST['requestbutton2']))
         
          echo "clicked";
         
       ?>
     </div>

<script>
  function change()
   
    var elem=document.getElementById("requestbutton");
    var elem2=document.getElementById("cancelbutton");
    if(elem.value=="Send Friend Request")
     
      elem.value="Friend Request Send";
      elem.disabled=true;
      elem2.disabled=false;
     
   
  function changeback()
   
    var elem=document.getElementById("requestbutton");
    var elem2=document.getElementById("cancelbutton");
    if(elem2.value=="Cancel")
     
      elem2.disabled=true;
      elem.value="Send Friend Request";
      elem.disabled=false;  
     
   
 </script>

当我单击“发送好友请求”按钮时,javascript 代码运行,但我在 php 中编写的任何操作代码都不会运行。 解决办法是什么?

【问题讨论】:

如果您需要,我可以帮助您编写代码。 =) 您发布的文件的名称是什么? 【参考方案1】:

您需要使用 AJAX。 因此,当您点击按钮时,JavaScript 会向您的后端发出 HTTP 请求。

$("your_element_id").click(function()
    $.ajax(
      type: "POST",
      url: url,
      data: data,
      success: success,
      dataType: dataType
    );
);

使用 jQuery 或类似的东西。这是一本很好的手册。

【讨论】:

在页面上使用 Javascript 时,PHP 已经运行很久了。您需要创建一个单独的文件(可能是 ajax.php)并让 javascript 向该文件发送调用,以便让您的 php 函数运行 是的,在单独的文件中保持代码干净是个好主意。我用的是scriptsscripts\ajax之类的东西,所以很容易理解。【参考方案2】:
$("your_element_id").click(function()
    $.ajax(
      type: "POST",
      url: url,
      data: data,
      success: success,
      dataType: dataType
    );
);

使用 jQuery 或类似的东西。 Here's 一本好手册。

【讨论】:

以上是关于如何在同一个按钮上运行 php 操作和 javascript 代码的主要内容,如果未能解决你的问题,请参考以下文章

由于单击按钮(传递了按钮“数据”),如何运行 PHP 函数?

如何使用onclick一个带有多个按钮php的插入功能的按钮

Java如何将具体点的状态码绑定在按钮上,比如,正常为0,锁定为1,删除为9,锁定和删除走同一个方法?

如何在没有 Artisan 的情况下在 Xampp 上运行 laravel

如何在 PHP 中使用 JavaScript 另存为函数?

如何获取运行 PHP 的操作系统?