Я пытаюсь изменить содержимое div с идентификатором «panel_alumno», используя функцию JS, когда нажата кнопка, чтобы отображалась другая таблица, но я не могу заставить ее работать. При нажатии на кнопку ничего не происходит.

Это мой сценарий:

  <script>
   function insertarTablaSolicitudes(){
    document.getElementById('panel_alumno').innerHTML = '<?php include ("tabla_solicitudes_alumno.php") ?>';
   }

   function insertarFormatoSolicitud(){
    document.getElementById('panel_alumno').innerHTML = '<?php include ("formato_solicitud.html") ?>';
   }

Это мое тело HTML:

<body>

<ul>
  <li><a type="button" onclick="cambiarPagina()">Mis solicitudes</a></li>
  <li><a type="button" onclick="insertarFormatoSolicitud()">Enviar Solicitud</a></li>
  <li><a href="cerrar_sesion.php">Salir</a></li>
</ul>

</br></br>

<div id="panel_alumno">

  <?php include ("tabla_solicitudes_alumno.php") ?>

</div>

</body>

Я пробовал разные способы сделать это, но ни один из них не работал. Если кто-нибудь знает лучший способ добиться этого, я был бы рад прочитать его. Заранее спасибо.

-1
Luis Fernando Gomez Saldaña 28 Окт 2019 в 00:09
include ("formato_solicitud.html") < для какого кода это?
 – 
Funk Forty Niner
28 Окт 2019 в 00:54
Привет, если вы «просматриваете исходный код» в браузере, все это может иметь смысл. Возможно, в formato_solicitud.html могут быть какие-то одинарные кавычки или что-то в этом роде. Кроме того, если вы посмотрите в инструменты разработчика и посмотрите на консоль, вы можете увидеть некоторые ошибки javascript, если есть проблема с цитированием.
 – 
Alex028502
28 Окт 2019 в 00:57
Это HTML, внутри которого есть только форма и таблица.
 – 
Luis Fernando Gomez Saldaña
28 Окт 2019 в 00:57
insertarTablaSolicitudes() и куда ты это звонишь? Вы запускаете это с веб-сервера или как file:/// на своем компьютере? Вопрос неясен, и можно задать больше вопросов, может быть, даже слишком много.
 – 
Funk Forty Niner
28 Окт 2019 в 00:58
Быстро попробуйте заменить содержимое formato_solicitud.html на test - и вы должны увидеть test в dev, и тогда вы узнаете, что содержимое портит javascript.
 – 
Alex028502
28 Окт 2019 в 01:03

1 ответ

Решение найдено, я только что проверил консоль браузера, и кажется, что проблема заключается в коде PHP внутри сценария JS, поэтому я изменил его, чтобы использовать JS вместо PHP. Вот новые функции, которые работают по назначению.

<script>
$(function(){ <!--This one puts the default insert when the page is loaded-->
  $("#panel_alumno").load("tabla_solicitudes_alumno.php");
});

function insertarTablaSolicitudes(){
  $("#panel_alumno").load("tabla_solicitudes_alumno.php");
};

function insertarFormatoSolicitud(){
  $("#panel_alumno").load("formato_solicitud.html");
};
</script>

И это мое тело HTML:

<body>

<ul>
  <li><a type="button" onclick="insertarTablaSolicitudes()">Mis solicitudes</a></li>
  <li><a type="button" onclick="insertarFormatoSolicitud()">Enviar Solicitud</a></li>
  <li><a href="cerrar_sesion.php">Salir</a></li>
</ul>

<div id="panel_alumno">

</div>

</body>
1
Luis Fernando Gomez Saldaña 28 Окт 2019 в 01:06