Hallo Akuls,
also Visforms verwendet zur Anzeige eines Datumsfeld den von Joomla! vorgesehenen Code zum Erzeugen des kompletten Controls und der ist leider ziemlich unhandlich. Z.B. macht dieser Joomla! Code keinen Unterschied zwischen eine Datum das "Readonly" ist und einem das "Disabled" ist (also das gesamte Control wird nicht angezeigt). Deshalb war es jetzt ein bisschen langwieriger die richtige Lösung zu finden. Aber ich denke ich habe jetzt eine funktionierende Lösung gefunden.
Du musst die Datei media/com_visforms/js/visforms.js anfassen, wenn du den Fehler sofort selbst beheben willst. Du kannst die Datei mit einem normalen Texteditor (ich mag notepad++) öffnen und bearbeiten. Am besten machst du zuerst eine Sicherungskopie der Datei und führst anschließend die Änderungen aus (dann kannst du, wenn was schief gehst notfalls einfach die Sicherung wieder hinstellen.)
In Zeile 142 beginnt die Funktion "showControls". Ersetzt den alten Code
Code:
function showControls (controls) {
if (controls.length < 1)
{
//no controls found, do nothing
return false;
}
$.each(controls, function (cindex, control) {
$(control).removeAttr('disabled');
$(control).removeClass('ignore');
if (cindex === 0)
{
$(control).parents("div.conditional").show();
}
});
}
mit folgendem neuen Code
Code:
function showControls (controls) {
if (controls.length < 1)
{
//no controls found, do nothing
return false;
}
$.each(controls, function (cindex, control) {
$(control).removeAttr('disabled');
$(control).removeClass('ignore');
//no radio or checkbox group
if (cindex === 0)
{
if ($(control).is('[readonly]') == false)
{
$(control).parents("div.conditional").find("button").show();
}
$(control).parents("div.conditional").show();
}
});
}
Habe den Code kurz getestet und soweit ich das sehe funktioniert auch alles andere weiterhin wie es soll.
Herzliche Grüße,
Aicha