Meine Funktion generiert eine Tabelle mit $ Daten aus einer MySQL-Abfrage um Unterforum Namen anfordert.Ausführen von PHP-Code auf einem onclick-Ereignis
function forum_links($data){
//print_r($data);
echo "<div id = 'sub_forums'>
<table>";
foreach($data as $name){
echo "
<tr>
<td id='sub_forum_image'>
<img src='images/favicon_text.ico' alt='MWGA'>
</td>
<td id='sub_forum_td'>
<a href='forum?forum={$name[0]}'>{$name[0]}</a>
</td>
</tr>";
}
echo "</table></div>";
}
Wenn der Text im Überprüfung angeklickt wird, wenn das Varibale Forum eingestellt und gesetzt, wenn ich will die div
<?php
if (isset($_GET['forum'])) {
echo "is set";
?> <script>sub_forum_hide();</script> <?php
}
?>
'sub_forums' verstecken
Der Fehler Ich erhalte
Uncaught TypeError: Cannot read property 'style' of null.
Ich denke, das hat etwas mit der Sequenzierung meines Dokuments zu tun, weil ich die gleiche hide style.display = "none"
in anderen Teilen verwendet habe.
function sub_forum_hide(){
document.getElementById("sub_forum").style.display = "none";
}
Ich habe versucht, die sub_forum_hide() auf der Unterseite meines Dokuments bewegen, aber ich immer noch die gleichen Fehler. Nur als Referenz funktioniert das "is set" -Echo, wenn ich auf den Text klicke.
ich zu bemerken, dass in Ihrem Top-Schnipsel Sie die ID 'sub_forums' (Plural) setzen und später dann versuchen, verstecke es mit der ID 'sub_forum' (singular). – claywhipkey
[IDs müssen eindeutig sein] (http://stackoverflow.com/questions/5611963/can-multiple-different-html-elements-have-the-same-id-if-theyre-different-eleme), speziell weil es verursacht Probleme in [JavaScript] (https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id) und CSS, wenn Sie versuchen, mit diesen Elementen zu interagieren. –
Zusätzlich (basierend auf Ihrem Titel) ist die einzige Möglichkeit, PHP-Code mit JavaScript auszuführen, die Verwendung von AJAX. –