javascript - 使用 AJAX 和 POST 运行 php 脚本

标签 javascript php jquery ajax

我对 AJAX 还很陌生。我使用返回 HTML 的 javascript 完成了其中一些操作,但我正在努力解决一些我认为应该非常简单的事情。

我有一个带有内联元素的标题:

<header>
  <span class="right_alignment">
    <a id="delete_work" href="">
      <input id ="work_id" type="hidden" value="<?php echo $work_id ?>"/>
      <i class="fa fa-plus" aria-hidden="true">
      </i>
    </a>
  </span>
</header>

我想将 $work_id 发送到一个 PHP 脚本,该脚本执行一个 MySQL 查询,删除数据库中的这条记录。它必须是 POST 请求,并且由于它是内联元素,所以我无法使用表单。所以 AJAX 就是这样。这是我的尝试:

$( document ).ready(function() {
  $("#delete_work").click(function () {
    $.ajax({
      url: 'scripts/script-delete-work.php',
      type: 'POST',
      data: $('#work_id').val(),
    });
  });
});

现在 script-delete-work.php 不用担心,所以很简单:

$edition_id = $_POST['work_id'];
echo $work_id;

但是这个设置不起作用。我知道这是最简单的 AJAX 形式,但我不知道如何发送数据或发生了什么故障。有什么帮助吗?

谢谢!

编辑-- 好吧,我解决了数据问题。我现在拥有的是:

HTML

<span class="span_edit_right">
  <a id="delete_work" href="">
    <input id="work_id" type="hidden" value="<?php echo $work_id; ?>"/>
        <i class="fa fa-trash-o" aria-hidden="true">
        </i>
  </a>
</span>

脚本:

$( document ).ready(function() {
  $("#delete_work").click(function () {
    var val = $('#work_id').val();
    $.ajax({
      url: 'scripts/script-delete-work.php',
      type: 'POST',
      data: { "work_id" : val },
      success: function ()
      {
        alert("works!");
      }
    });
  });
});

PHP

<?php echo $_POST['work_id'];

当我点击#delete_work时它返回警报 "works" ,并重新加载页面,但不显示带有 <?php echo $_POST['work_id']; 的页面.

最佳答案

请使用此代码

$( document ).ready(function() {
  $("#delete_work").click(function () {
    var val = $('#work_id').val();
    $.ajax({
      url: 'scripts/script-delete-work.php',
      type: 'POST',
      data: { "work_id" : val },
      success: function () 
      {

      }

    });
  });
});

在您的服务器端只需

echo $_POST['work_id'];

关于javascript - 使用 AJAX 和 POST 运行 php 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45388883/

相关文章:

javascript - 如何将 csrf token 添加到 jQuery 调用中?

javascript - 在 JS 中解析 JSON 字符串中的特殊字符

javascript - Nodejs 在 Instagram 帖子上点击“赞”

php - 在 WooCommerce 产品的 Hook 函数中检查产品类别

PHP:从变量实例化一个类奇怪地失败了

jquery - 更改 CSS 然后加载 HTML 文件不起作用

javascript - 为什么选择选项更改事件不能有 this 和 event.target 来获取所选值?

javascript - 按属性值搜索 Firefox Inspector

javascript - 如何在 Firefox 扩展中以字符串形式获取页面的 html?

xml - Magento XML $this->getChildHtml() 有必要吗?