Кнопки перенаправления PHP в DataTables не работают - PullRequest
0 голосов
/ 31 мая 2019

Я создаю таблицу с использованием PHP, которая будет извлекать записи из базы данных MySQL.Я новичок в DataTables, и моя проблема в том, что кнопка «Просмотр продуктов», которая генерируется вместе с таблицей, не работает.Нажатие на кнопку должно перенаправить на новую страницу с совершенно другой таблицей.

вот скриншот того, как это выглядит, на случай, если я не буду иметь никакого смысла

Вот весь код страницы.

<!DOCTYPE html>
<html>

<head>
  <title></title>
  <link rel="stylesheet" type="text/css" href="\WEBDEV\css\reset.css">
  <link rel="stylesheet" type="text/css" href="\WEBDEV\css\stylesheet.css">
  <link rel="stylesheet" type="text/css" href="\WEBDEV\css\og_stylesheet.css">

  <style type="text/css">
    thead {
      background-color: #dc3545;
      color: white;
    }
  </style>
</head>

<body>

  <!-- HEADER -->
  <?php include "includes/header.php" ?>

  <?php session_start();

?>
  <!-- END HEADER -->

            <table class="table table-striped" id="table_id">
                <thead>
                  <tr>
                    <th>Supplier ID</th>
                    <th>Name</th>
                    <th>Address</th>
                    <th>Contact Number</th>
                    <th>Supplier Details</th>
                  </tr>
                </thead>
                <tbody>
                  <?php
                      $conn = mysqli_connect("localhost", "root", "", "web_db");
                      $query = "SELECT * FROM Suppliers";
                      $search = mysqli_query($conn, $query);
                        if(mysqli_num_rows($search) > 0 ){
                          while($row = mysqli_fetch_array($search)){
                          ?>
                    <form action="supplierdetails.php" method="POST">
                      <tr>
                        <td>
                          <?= $row['supplier_id']?>
                        </td>
                        <input type="hidden" value=< ?=$row[ 'supplier_id']?> name = "sup_id">
                        <input type="hidden" value=< ?=$row[ 'name']?> name = "name">
                        <td>
                          <?= $row['name']?>
                        </td>
                        <td>
                          <?= $row['address']?>
                        </td>
                        <td>
                          <?= $row['contactnumber']?>
                        </td>
                        <td><input type="submit" name="sub" value="View Products" class="btn btn-info" onclick="sample()"></td>
                      </tr>
                    </form>
                    <?php
                          }
                        }
                      ?>
                </tbody>
              </table>

  <script>
    $(document).ready(function() {
      $(".alert").delay(3000).fadeOut();
    });
  </script>

  <script>
    function sample() {
      window.alert(document.getElementById("name").getAttribute("value"));
    }
  </script>


  <script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.js"></script>
  <script type="text/javascript" charset="utf8" src="/DataTables/datatables.js"></script>-->


  <script type="text/javascript">
    $(document).ready(function() {
      $('#table_id').DataTable();
    });
  </script>

  <script type="text/javascript" src="jquery.dataTables.js"></script>
  <script type="text/javascript" src="dataTables.filter.range.js"></script>
  <script type="text/javascript">
    $(document).ready(function() {
      var table = $('#table_id').DataTable();

      /* Add event listeners to the two range filtering inputs */
      $('#min, #max').keyup(function() {
        table.draw();
      });
    });
  </script>

</body>

</html>

Кстати, кнопки отлично работали до того, как я добавил DataTables.Я также узнал, что в таблице с жестко закодированными данными (как без PHP) также есть кнопки, которые работают нормально.Я в значительной степени в моем уме остроумие здесь.Любая помощь будет оценена.

1 Ответ

0 голосов
/ 31 мая 2019

Удалить onclick="sample()" Добавьте это в документ. Уже

$(".btn-info").on("click", function() {
    window.alert(document.getElementById("name").getAttribute("value"));
});

Может быть, использовать window.alert('test'); поскольку я нигде не вижу элемент с идентификатором

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...