0 votes
in SoSci Survey (dt.) by s099243 (180 points)
closed by SoSci Survey

Hallo,
Ich möchte, wenn in ein offenes Textfeld eine Angabe gemacht wurde, einen weiteren Text direkt darunter einblenden.
Ich habe folgenden Code, der nicht funktioniert.



<!--
var optionB = document.getElementById("GS13_qst");  

var frageB = document.getElementById("GS02_media");  // HTML-ID der Texteingabe
 
function toogle() {
  // Die zwei Pipes (||) sind ein logisches "Oder"
  // Die Bedingung prüft also: Ist Option A ausgewählt oder ist B ausgewählt?
  if (optionB.checked) {
    frageB.style.display = "";
  } else {
    // Mit der Anzeigeoption "none" wird die Frage ausgeblendet
    frageB.style.display = "none";
  }
}
 
// Die Funktion soll jedesmal ausgeführt werden, wenn der Kasten ausgefüllt wird

SoSciTools.attachEvent(optionB, "click", toogle);

// Und jetzt gleich soll sie auch ausgeführt werden, damit die Anzeige zu Beginn korrekt ist
// (z.B. ausblenden der Texteingabe zu Beginn)
toogle();
// -->


closed with the note: (Teil-)Lösung in Kommentaren
by SoSci Survey (306k points)
Haben Sie um den Code herum ein <script> Tag stehen?

Wenn ja, was sagt denn die JavaScript-Fehlerkonsole in Ihrem Browser?

Möchten Sie vielleicht einen Pretest-Link direkt (!) zur betroffenen Seite posten?

Meiner Meinung nach ist die Kennung "GS13_qst" nicht korrekt, weil das die Frage und nicht die Auswahloption bezeichnet. Dies ist aber nur eine Vermutung.
by s099243 (180 points)
Ja, das <script> tag ist da. Die Fehlermeldung bei GS05 ist: No element specified for SoSciTools.attachEvent()
Der Link: https://www.soscisurvey.de/fragen_zu_verhalten/?act=V2JFvGoCGMux3yiKcPTk1Yyf
Danke für jeden Tip!
by SoSci Survey (306k points)
Der Pretest-Link scheint nicht (mehr) gültig zu sein.
by s099243 (180 points)
Tut mir leid! Ich habe es immer noch nicht lösen können. Dieser Link sollte funktionieren: https://www.soscisurvey.de/fragen_zu_verhalten/?act=AZDvPM0e0TkDBblmPkblRjcO
by SoSci Survey (306k points)
Leider nein... Einen gültigen Pretest-Link erzeugen Sie wie hier beschrieben: https://www.soscisurvey.de/help/doku.php/de:survey:pretest
by s099243 (180 points)
Entschuldigung. Dieser Link ist jetzt wirklic ein Pretest-Link: https://www.soscisurvey.de/fragen_zu_verhalten/index.php?i=WO1CS0KL1I2I&rnd=JKBM
by SoSci Survey (306k points)
Nein, das ist der Link zu einem laufenden Interview.... Befragungsprojekt -> Pretest und Vorschau -> Pretest-Link mit dem + (rechts oben) anlegen
by s099243 (180 points)
Genau so habe ich den Link erstellt, dann habe ich innerhalb des Pretests bis zur entsprechenden Seite geklickt und den Link hier hinein kopiert.
Wenn ich auf den Link klicke, steht oben orange hinterlegt "Pretest des Fragebogens".
Hier ein neuer Link zu einem nochmals neu erstellten Pretest:
https://www.soscisurvey.de/fragen_zu_verhalten/index.php?i=ATBJ01NO97JX&rnd=IHTM
by SoSci Survey (306k points)
Bitte stellen Sie unter "Pretest und Vorschau" zunächst oben rechts die richtige Seite ein, erstellen Sie dann den neuen Pretest-Link mit dem Plus-Zeichen. Kopieren Sie anschließend den soeben erstellten Link. Danke.

Die korrekte Kennung für das Textfeld wäre mod_optin_GS13.

Also entsprechend:
var optionB = document.getElementById("mod_optin_GS13");

Und statt (optionB.checked) müsste es heißen:
if (optionB.value != "")

Last, but not least, geht es nicht um einen Klick, sondern um einen Tastendruck, also:

SoSciTools.attachEvent(optionB, "keyup", toogle);

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...