【问题标题】:Displaying table data in modal with PHP and JavaScript使用 PHP 和 JavaScript 以模式显示表格数据
【发布时间】:2020-04-12 11:29:18
【问题描述】:

我对 PHP 和 JavaScript 还有些陌生。我正在开发一个 Web 应用程序,其中涉及使用 PHP 和 MySQL 在表格中显示一些数据。

我希望能够单击表格的一行并显示一个模式,其中将包含有关我刚刚单击的行的其他详细信息。单击该行时,我目前的模式显示正常。

使用 JavaScript,我已经可以将表格行中显示的任何内容解析为模式。

我的问题是,有些细节我不想在表格行上显示,但想在查看完整细节时显示在模式中。如何将 PHP 中的额外值解析为模态?

编辑:如果这很重要,我正在使用 JavaScript DataTables 库。

代码:

PHP:

if ($stmt = $conn->prepare($query)) {
    $stmt->bind_param("i", $id);
    $stmt->execute();
    $stmt->bind_result($issueID, $title, $projectName, $assignedTo, $priority, 
        $status, $type, $creationDate, $dueDate);

    while($stmt->fetch()) {
        echo "<tr>";
        echo "<td>$title</td>";
        echo "<td>$projectName</td>";
        echo "<td>$assignedTo</td>";
        echo "<td>$priority</td>";
        echo "<td>$status</td>";
        echo "<td>$type</td>";
        echo "<td>$creationDate</td>";            
        echo "</tr>";
    }
    $stmt->free_result();
    $stmt->close();
}

例如,我在我的 SQL 查询中检索 $dueDate,我想在模式中而不是在表格行中显示它。

如果需要,我可以尝试提供更多说明,任何帮助将不胜感激。

谢谢!

【问题讨论】:

  • 也许这个帖子可以帮助你:stackoverflow.com/questions/50383763/…。如果没有,请告诉我们。
  • 有没有办法在没有 Ajax 的情况下做到这一点?
  • 我不这么认为,TylerB。要将表中的数据加载到模式中,需要异步处理。 PHP cURL 会帮助你,但我认为最好使用 JavaScript。

标签: javascript php jquery mysql


【解决方案1】:

要在没有 Ajax 的情况下执行此操作,请使用您的 data- 属性生成表行,例如data-duedate="2020-05-12"。当用户单击以获取更多信息时,处理该单击的 JS 将检测单击了哪一行,从该行检索相关的 data-foo 值(请参阅jQuery's data() function),用这些值填充模态,最后显示模态.

不利的一面是,您检索的大量数据将始终驻留在表中,即使用户从不点击任何详细信息。从好的方面来说,点击查看详情应该相对较快。

【讨论】:

猜你喜欢
  • 2012-05-02
  • 1970-01-01
  • 2014-04-26
  • 1970-01-01
  • 2015-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-23
相关资源
最近更新 更多