编辑以更好地解释我的问题是:
- 我有一个以第 1 页为内容的 Div。
- 第 1 页有一个按钮,可以将我的 div 的内容更改为第 2 页。
- 第 2 页有一个按钮,可以将我的 div 的内容更改为第 1 页。
问题: 如果首先加载第 1 页,则该按钮不执行任何操作。如果首先加载第 2 页,则按钮将内容更改为第 1 页。并且第 1 页上的按钮然后工作(如果第 1 页在第 2 页之前加载,则不会!这是我的问题!)。
我一直在尝试开发一个数学训练工具。实际上,我似乎在一开始就失败了,因为我只是看不到以下行为的原因。
问题: 为什么这只有在我首先以错误的顺序加载页面时才有效?
此处的页面: 发布底部的MathTrainer页面代码。
我正在尝试什么:
我有一个选择页面加载到一个 div 中,这个 div 由一个 php-include 填充。当点击按钮时,我希望 div 的内容更改为实际的培训工具。所以“问题” - “选项1” - “选项2”......等等。与一个按钮一起通过相同的方法返回选择。
此更改通过提交按钮中的“onclick”处理,并在 JS 中调用函数。即:
$("#trainercontent").load('trainerAbfrage.php');
怎么了:
什么都没有,.. 就像我猜由于提交功能而导致的页面重新加载。div 内容没有改变。
是什么导致了这种意想不到的行为?
除了不工作之外,我还尝试首先包含培训工具并使用那里的按钮返回选择(显然应该首先显示)。它确实有效。当我将页面编码为“ISO”并在切换到 UTF-8 时停止工作时,它也确实有效。编码不应该像这样弄乱我的页面,对吧?
是什么让这更加出乎意料?
如果我首先包含培训页面,请使用后退按钮进入选择页面,然后点击“开始”按钮,它也可以工作!这真的让我很困惑,因为它是完全相同的代码,加载了相同的文件!如果它不是显示的第一页,为什么它会起作用?
我试图调试的内容:
- 我删除了 php-include 并将其替换为加载页面上的 javafunction,以检查我的问题是否涉及 php。相同的行为。如果首先显示选择,我无法切换到培训师,但如果首先显示培训师,我可以背靠背切换。
- 切换回ISO编码,没有运气。
- 然后我试图改变我的文件结构(我知道,但真的没有想法了),所以每个文件都在我服务器上的同一个文件夹中。相同的行为。
代码,主页:
<!doctype html>
<html lang="de">
<head>
<!-- Titel der Webseite -->
<title>Mathematik - Definitions-Trainer</title>
<!-- Metadaten der Webseite -->
<meta charset="UTF-8">
<meta name="author" content="Heumann Marco">
<meta name="keywords" content="Mathe, Mathematik, Lehramt, Gymnasium, Trainer, Übungen, lernen, Axiom, Axiome, Definition, Definitionen">
<meta name="description" content="Definitions und Axioms-Trainer für das Lehramt der Mathematik an Gymnasien.">
<!-- Verweis auf die JavaScripte die benutzt werden sollen -->
<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script><!-- weil jQuery sexy ist-->
<script type="text/javascript" src="https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-MML-AM_HTMLorMML"></script><!-- Matheformeln aufhübschen hiermit -->
<script type="text/javascript" src="../javascript/ios.js"></script><!-- damits mit Touchscreens auch gut geht -->
<!-- Eigene Javascripte -->
<script type="text/javascript" src="javaTrainer.js"></script>
<!-- Verweis auf die Styledateien die benutzt werden soll -->
<link rel="stylesheet" type="text/css" href="styleTrainer.css">
</head>
<body>
<div id="trainerheader">
<h1>Definitions und Axioms - Trainer</h1>
</div>
<div id="trainercontent">
<?php
//dynamischer php-Aufbau des Contents
include 'trainerAuswahl.php';
?>
</div>
<div id="footer">
<!-- php include des Footers-->
<?php include '../includes/footer.php'; ?>
</div>
</body>
代码,选择页面:
<h2>Wähle Deine Abfrageoptionen</h2>
<form>
<fieldset>
<legend>Bereich einschränken</legend>
<p>
<label>Semester / Kurs</label>
<select id = "listSemester" name="selectSemester">
<option value = "0">Alle</option>
<option value = "1">1. Semester - Analysis einer Variablen</option>
<option value = "2">2. Semester - Lineare Algebra</option>
</select>
</p>
<p>
<label>Kapitel / Thema</label>
<select id = "listKapitel" name="selectKapitel">
<option value = "1">Alle</option>
</select>
</p>
</fieldset>
<fieldset>
<legend>Art der Abfrage</legend>
<p>Unabhängig von der gewählten Option werden alle Relevanten Infos in der Auflösung angezeigt. Je nach Frage kann es auch weitere Hinweise und Erklärungen geben.</p>
<br/>
<input type = "radio" name = "skill" id = "geringID" value = "gering" checked = "checked" />
<label for = "geringID"><font color="green">Leicht</font> für Einsteiger, viel Text.</label><br/>
<input type = "radio" name = "skill" id = "gutID" value = "gut" />
<label for = "gutID"><font color="orange">Medium</font> für Prüfungsvorbereitung, viele Formeln.</label><br/>
<input type = "radio" name = "skill" id = "perfektID" value = "perfekt" />
<label for = "perfektID"><font color="red">Schwer</font> für Freaks, nur Formeln, Zahlen und Griechen!</label><br/>
<input type = "radio" name = "skill" id = "testID" value = "test" />
<label for = "perfektID"><font color="blue">Debug</font> für Testzwecke</label><br/>
</fieldset>
<p>
<input type="submit" onclick="abfrage();" value="Starte die Abfrage"/>
</p>
代码,培训页面:
<h2>Hier werden sie getestet!</h2>
<h3>Frage...</h3>
<p>Option 1</p>
<p>Option 2</p>
<p>Option 3</p>
<p>Option 4</p>
<p>Option 5</p>
<p><input type="submit" onclick="auswahl();" value="Back zur Auswahl"/></p>
代码,Javascript:
//wenn jemand auf den Button klickt um die Abfrage zu starten
function abfrage()
{
$("#trainercontent").load('trainerAbfrage.php');
}
//wenn jemand auf den Button klickt um zur Auswahl zurück zu kommen
function auswahl()
{
$("#trainercontent").load("trainerAuswahl.php");
}