Javascript in Modulkonfiguration nicht möglich?

Gesperrt
Chopper
Beiträge: 108
Registriert: Mi 9. Feb 2005, 17:09
Wohnort: Berlin
Kontaktdaten:

Javascript in Modulkonfiguration nicht möglich?

Beitrag von Chopper »

Hi,

ich wollte mal fragen ob man irgendwie im INPUT teil von einem modul javascript einbinden kann.
Problem ist, wenn ich eine Funktion erst mitten im Code schreibe, klapt der aufrauf nicht richtig.

Ich wollte ein onChange auf ne dropdown liste machen, das er dann je nachdem unten ankreuzfelder ein oder ausblendet ... aber der Aufruf der Funktion klapt momentan nur wenn ich die seite abspeicher und die funktion in den header schiebe

EDIT: ok erst testen dann posten, eigentlich sinds die doofen variablen namen die stören ^^ CMS_VAR[0]
onChange="switchDiv(document.tplcfgform.C6CMS_VAR[0].options[document.tplcfgform.C6CMS_VAR[0].options.selectedIndex].value)"

Also wenn jemand weiß, wie ich am besten den wert oder index ansprechen kann ohne den formularnamen und den namen des select feldes zu nutzen wär ich dankbar
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Re: Javascript in Modulkonfiguration nicht möglich?

Beitrag von emergence »

Chopper hat geschrieben:Also wenn jemand weiß, wie ich am besten den wert oder index ansprechen kann ohne den formularnamen und den namen des select feldes zu nutzen wär ich dankbar
ich habs glaube ich mal ziemlich ähnlich wie du in deinem beispiel gemacht... es ging glaube ich gar nicht anders...
etwas wie this.options[this.options.selectedIndex].value ging nicht bei mir...
aber leider so ein javascript crack bin ich leider nicht...
*** make your own tools (wishlist :: thx)
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Du kannst im PHP-Code folgendes verwenden (Beispiel):

Code: Alles auswählen

echo '                      <td><input type="radio" name="CMS_VAR[1]" value="Default" checked onClick="document.forms[0].elements(\'CMS_VAR[2]\').disabled = true;document.forms[0].GroupSel.disabled = true;"></td>';
Beachte, dass sich das JS in einem PHP-echo befindet. Durch das Ersetzen der CMS_VAR[x]-Variablen erhältst Du den richtigen Namen, die Variante mit .elements() ermöglicht die Übergabe des "verrückten" Names, z.B. C6CMS_VAR[0].

Gibt es mehrere Felder mit dem gleichen Namen (z.B. bei Optionen), kann man einzelne Elemente über den Index ansprechen, z.B. so (nur Ausschnitt):

Code: Alles auswählen

echo 'document.forms[0].elements(\'CMS_VAR[5]\')[0].disabled = true;';
In Input ist übrigens alles einem Formular, dieses kann über forms[0] angesprochen werden.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Chopper
Beiträge: 108
Registriert: Mi 9. Feb 2005, 17:09
Wohnort: Berlin
Kontaktdaten:

Beitrag von Chopper »

ah, danke ...

wenn wir schon bei javascript sind, ich hätte noch ein anderes Problem :)
also ich will alle select boxen unselecten bei dem functions aufruf ...

ALLE Select boxen haben den selben namen

Code: Alles auswählen

<input type="checkbox" name="C5CMS_VAR[1]" value="METHOD">METHOD<br>
<input type="checkbox" name="C5CMS_VAR[1]" value="METHOD_NAME">METHOD_NAME<br>
<input type="checkbox" name="C5CMS_VAR[1]" value="METHOD_DESTRUCT">METHOD_DESTRUCT<br>
<input type="checkbox" name="C5CMS_VAR[1]" value="METHOD_INSTRUMENT">METHOD_INSTRUMENT<br>
<input type="checkbox" name="C5CMS_VAR[1]" value="METHOD_REMARKS">METHOD_REMARKS<br>
hier ist der code beispielhaft zu sehen
http://chopper.dafnet.org/test.html

Code: Alles auswählen

actualDiv = '';
function switchDiv(visibleDiv) {
    if (actualDiv != '')
	document.getElementById(actualDiv).style.display ='none';
	document.getElementById(visibleDiv).style.display ='block';
	actualDiv = visibleDiv;
	  for (i = 0; i < document.forms[0].elements('C5CMS_VAR[0]').length; i++)
{
	    document.forms[0].elements('C5CMS_VAR[0]')[i].checked = '';
  }
}
Chopper
Beiträge: 108
Registriert: Mi 9. Feb 2005, 17:09
Wohnort: Berlin
Kontaktdaten:

Beitrag von Chopper »

Also beim rumprobieren ist mir ein neues Problem aufgefallen,


Das Problem ist,
in CMS_VALUE[1] WÄRE ein Array, aber er speichert dort nur den LETZEN wert des arrays ... :(
kommt man irgendwie an alle ran ?


man kann die CMS_VALUE[X] ja auch nicht mit X machen und durchlaufen, weil das ja vorher ersetzt wird irgendwie ..... mhhhh

EDIT:
Ich habe dazu mal einen eigenen Thread aufgemacht, da es ja nichts mit dem Javascript Problem zu tun hat eigentlich
Hier zu finden:
http://contenido.org/forum/viewtopic.php?t=7411
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Du hast es jetzt dreimal gespostet, siehe meine Antwort, ähm, da wo sie ist...

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Gesperrt