Сделайте таблицу HTML для печати, используя javascript / php / html

Мне нужен способ сделать кнопку печати, которая печатает таблицу. Одна концепция, которую я изучал, заключается в создании новой страницы в фоновом режиме, на которой воссоздается таблица, ее печати и последующей отправке пользователя обратно на исходную страницу. Однако - я не знаю, как запустить команду печати из php / javascript / html. Если бы у кого-то было лучшее предложение, как это сделать, или он знал, как печатать, я был бы признателен.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
0
25
2

Ответы 2

Это мой первый ответ, поэтому формат моего ответа не идеален, но вы хотите сделать что-то вроде этого: Кнопка вызывает функцию getTable, которая затем в форме ajax вызывает PHP-скрипт, который затем отображает таблицу в div под названием «table». Если вы сделаете это таким образом, страница не будет перезагружена, а таблица будет отображаться синхронно.

<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
    $(document).ready(function(e){
    function getTable(){
        $.ajax({
            type: 'get',
            url: './load_table.php',
            dataType: 'html',
            success: function(response){                    
            $("#table").html(response), 
        }
        });
    }
    });

</script>

<?php

  echo '<table>
    <tr>
      <th>Month</th>
      <th>Savings</th>
    </tr>
    <tr>
      <td>January</td>
      <td>$100</td>
    </tr>
  </table>';

?>
<button type = "button" onclick = getTable().submit()> Click Me! </button>

<div id = "table" name = "table">

</div>

Нет, это не тот ответ, на который он спрашивает. Он действительно хочет напечатать таблицу, а не получить ее.

John Doe 30.03.2021 06:31
<table border = "1" cellpadding = "3" id = "printTable">
    <tbody><tr>
        <th>First Name</th>
        <th>Last Name</th>      
        <th>Points</th>
    </tr>
    <tr>
        <td>Jill</td>
        <td>Smith</td>      
        <td>50</td>
    </tr>
    <tr>
        <td>Eve</td>
        <td>Jackson</td>        
        <td>94</td>
    </tr>
    <tr>
        <td>John</td>
        <td>Doe</td>        
        <td>80</td>
    </tr>
    <tr>
        <td>Adam</td>
        <td>Johnson</td>        
        <td>67</td>
    </tr>
</tbody></table>

<br />
<br />

<button>Print me</button>

<script src = "https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
function printData()
{
   var divToPrint=document.getElementById("printTable");
   newWin= window.open("");
   newWin.document.write(divToPrint.outerHTML);
   newWin.print();
   newWin.close();
}

$('button').on('click',function(){
printData();
})
</script>

Другие вопросы по теме