dass mir ein Fehler angezeigt wird, wenn ich möchte, dass sie mir als Frage angezeigt werden und verstehe nicht, warum das so ist.
Wenn Du damit meinst, dass bei Fragen mit Teilfragen (Mehrfachnennung, Matrix, ...) der eigentliche Überfragentext nicht mittels der Property ".question" angezeigt wird, ist dies eben so.
Es wird im Grunde die Spaltenüberschrift der Datenbanktabelle angezeigt.
Denn im Grunde ist eine Mehrfach-Frage ja nichts anderes als eine Aneinanderkettung von Einfachfragen, die mit "gewählt" oder "nicht gewählt" beantwortet werden.
Wie @holch schon sagte, das wird hart gecodet. Oftmals steht ja in diesem Fragetext noch etwas "Schrott", den man gar nicht anzeigen möchte (irgendwelche Erklärungen, oder so)
Nun zum Ausblenden aufgrund einer Vorfrage.
Wie schon gesagt: Benutze nicht den HTML-Editor, sondern den Quelltext-Editor.
Dann könnte es so aussehen (ganz schnell und roh):
Code:
<p>Hallo,</p>
<p>hier sind die Antworten:</p>
<table border="1" cellpadding="1" cellspacing="1" style="width:500px;">
<tbody>
<tr>
<td style="width:61%">{Q4_SQ001.question}</td>
<td style="width:39%">{Q4_SQ001.shown}</td>
</tr>
<tr style="{if(Q1<25,'display:none','')}">
<td style="width:61%">{Q4_SQ002.question}</td>
<td style="width:39%">{Q4_SQ002.shown}</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>
</p>
<table border="1" cellpadding="1" cellspacing="1" style="width:500px;">
<thead>
<tr>
<th style="width:61%">Bewerten Sie einmal</th>
<th style="width:13%">gut</th>
<th style="width:13%">mittel</th>
<th style="width:13%">schlecht</th>
</tr>
</thead>
<tbody>
<tr>
<td style="width:61%">{Q4_SQ001.question}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ001==1,"X","")}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ001==2,"X","")}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ001==3,"X","")}</td>
</tr>
<tr>
<td style="width:61%">{Q4_SQ002.question}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ002==1,"X","")}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ002==2,"X","")}</td>
<td style="width:13%;text-align:center">{if(Q4_SQ002==3,"X","")}</td>
</tr>
</tbody>
</table>
<p>
</p>
<p>
</p>
<table border="1" cellpadding="1" cellspacing="1" style="width:500px; {if(Q1<25,'display:none','')}">
<tbody>
<tr>
<td style="width:80%">{Q1.question}</td>
<td style="width:20%">{Q1.shown}</td>
</tr>
<tr style="">
<td style="width:80%">{Q2.question}</td>
<td style="width:20%">{Q2.shown}</td>
</tr>
<tr>
<td style="width:80%">{Q3.question}</td>
<td style="width:20%">{Q3.shown}</td>
</tr>
</tbody>
</table>
Du siehst diese Zeile
<tr style="display:{if(Q1<25,'display:none','')}">
Hier wird also ein IF benutzt, um bei Teilnehmern, die jünger als 25 sind diese Tabellenzeile auszublenden.
Genauso, um eine ganze Tabelle auszublenden
<table border="1" cellpadding="1" cellspacing="1" style="width:500px; {if(Q1<25,'display:none','')}">
Immer beachten Anführungszeichen müssen sich abwechseln.
Innerhalb von doppelten kommen einfache, und umgekehrt.
Jetzt zur Begründung, warum nicht der HTML-Editor.
Dieser meint, manches besser zu wissen, und ändert "<" und ">" Zeichen in die Entities "<" und ">". Damit kommt Expression Manager nicht zurecht.
Kann man umgehen, indem man die Synonyme "lt" und "gt", und auch "le" und "ge" benutzt.
Aber zusätzlich gibt es auch manchmal Probleme mit den Anführungszeichen. Da kommt dieser Editor ebenfalls von Zeit zu Zeit durcheinander.
Das macht dann viel Mühe und Ärger.
Joffm