当前位置: 首页 > 面试题库 >

使用PHP和AJAX填充模式内容?

仲皓君
2023-03-14
问题内容

我希望用户能够单击表,并根据他们单击的行-它会用与该行相关的内容(MYSQL查询)填充模式,并打开模式。

我尝试执行以下操作:-加载表内容-使用jQuery单击表时-使用AJAX通过单击的行信息发布到PHP文件-使用行信息执行MYSQL查询-
填充具有收集的内容的模态-打开模态

我遇到的问题是,因为这是一条MYSQL语句,并且该函数是非阻塞的,所以在模式开始打开时尚未声明变量。Web编程并不是我的强项,所以我确定我缺少一些简单的东西。

提前致谢!

编辑:

jQuery / AJAX

$('#alerts tbody').delegate('tr', 'click', function() {
  var id = $('td:eq(0)', this).text(); // Gets the ID of the row

  // PHP Method (below)


  // Passes ID through to PHP
  $.ajax({
    url: "alerts.php",
    method: "GET",
    data: {id: ID},
    async: true,
    done: function() {
        loadModalFunction();
    }
    });
});

的PHP

<?php
  if (!empty($_GET['id'])) {
    // MYSQL Query
    // Sets global variables    
  }
?>

模态

$('#info').find('.modal-title').text("Information (#" + id + ")");
$('#info').find('#modal-body-content').text("<?php echo $GLOBALS['content'];?>");

我知道,获取ID和获取内容是可行的,但是由于脚本初始化全局变量之前已加载模式,因此内容不会传递给ID。


问题答案:

好了,这是我在此问题上的实现,仅提供基础知识并让您相应地编辑自己的代码会更简单一些。

首先,我的整个模式内容是一个具有ID的div, <div id="modalcontent"> </div>

然后,假设此按钮应打开并用数据填充我的模态

<a href="#" onclick="openModal()">Open</a>

openModal()看起来像这样

$.post("alerts.php", {
    id: ID
}, function(data) {//data will contain whatever alerts.php prints
document.getElementById("modalcontent").innerHTML = data;//insert data into modal
$('#my-modal').modal('toggle');//open modal
});

同样,有很多方法可以做到这一点。有更好的方法可以做到这一点。但是您应该了解这种工作方式,您只能在javascript中获取PHP文件的输出,并使用javascript编辑内容。您可以从另一个PHP脚本获取数据,该脚本将在需要时由javascript执行,但是PHP脚本本身无法修改已加载页面的内容。

使用此代码,并假设alerts.php意志echo "you have a notification";<div id="modalcontent"> </div>将变更为<div id="modalcontent">you have a notification</div>,然后进行模态的切换。此方法还确保仅 获取数据后才打开模式,因此如果没有内部数据,则无法打开模式。



 类似资料:
  • 问题内容: 我较早前发布了一个问题,但运气不太好,我希望清除第二个下拉列表的内容并重新填充该下拉列表,具体取决于第一个下拉列表中的值。 我有以下选择框,如下所示: 在此下拉菜单下,我还为模型添加了另一个下拉菜单: onchange我想清除第二个下拉列表,并在其中填充与汽车品牌相关的模型。例如。 然后,我具有如下所示的PHP函数(我正在使用codeigniter)-该函数使用Car ID并返回所有模

  • 问题内容: 我的任务是编写一个涉及加密的小型Java控制台应用程序。我对加密不熟悉,因此我必须先阅读一些内容。到目前为止,给出的高级要求是应使用AES-256生成一次性密钥来加密文件。 之后,应使用收件人的公共密钥(RSA-2048)来加密该AES-256一次性密钥。然后将加密的文件和加密的一次性AES-256密钥压缩并发送给收件人。 从我对读取的加密和解密的了解中,除了算法(RSA,AES等)之

  • 我的任务是编写一个涉及加密的小型Java控制台应用程序。我对加密不熟悉,所以我必须先读一读。到目前为止,给出的高级要求是AES-256应该用于生成一个一次性密钥来加密文件。 之后,应使用收件人的公钥(RSA-2048)加密该AES-256一次性密钥。加密的文件和加密的一次性AES-256密钥然后将被拉链并发送给收件人。 根据我对加密和解密的理解,除了算法(RSA、AES等)之外,还有一些叫做模式和

  • 问题内容: 我有一个包含2个@DropDownListFor的Helpers的视图: 这是我用来捕获数据的临时模型: 创建页面时将填充其中一个DropsDownList,而第二个将根据用户在第一个DropDownList中选择的选项进行填充。为了实现这一点,我正在使用ajax。我使用的javascript如下所示: 这是AJAX调用的Controller: 到目前为止,一切正常-当我在Provin

  • 问题内容: 好的,这是我对Ajax的第一次尝试,它使我发疯,因为我实在无法绕开它。我想做的是在第一个框中用数据库中的客户填充,然后使用customerID通过select.php脚本从数据库中选择所有车辆ID。发生的情况是“客户”框被选中,但是选择客户时什么也没有发生。 这是我的Test.php文件: 这是我的select.php文件: 我正在尝试修改本教程以使用数据库,但到目前为止我没有成功。

  • 问题内容: 嗨,我想使用Ajax在下拉菜单上管理数据。 数据库字段: 1.id 2.名称 3.部门 myDesgin.php 1.如果我选择了一个下拉菜单,要更改另一个下拉菜单,则取决于使用Ajax选择的值。 2.是否有可用的代码,如果我选择一个下拉菜单,它将转到另一个子窗口并使用 Ajax 以表格式(如报告)显示数据。 提前致谢。 请给我示例代码,因为我是ajax的初学者,如果有人提供带有代码的