better exposed filters validation errors
Eingetragen von hasel (136)
am 29.08.2011 - 06:00 Uhr in
am 29.08.2011 - 06:00 Uhr in
Hej,
ich habe mir das Modul better exposed filters installiert um anstelle von einer Auswahlliste checkboxen zu erhalten das klappt mittlerweile auch wunderbar, allerdings habe ich noch mit validation Fehlern zu kämpfen die ich nicht behoben bekomme :-( kann mir da jemand von euch weiterhelfen?
Ergebnis mit dem w3c Validator
Über eine Antwort würde ich mich sehr freuen.
lg
hasel
- Anmelden oder Registrieren um Kommentare zu schreiben
Ohne einen Link zu Deiner
am 29.08.2011 - 08:20 Uhr
Ohne einen Link zu Deiner Seite wird es wohl unmöglich, Dir zu helfen. Ich glaube nämlich nicht, daß die Fehlermeldungen von dem Modul verursacht werden.
Beste Grüße
Werner
Hallo Werner,sorry ganz
am 29.08.2011 - 12:34 Uhr
Hallo Werner,
sorry ganz vergessen meine Signatur wird ja nur angezeigt wenn ich Antworte und da ist mein Link angegeben :-)
hoffe das hilft weiter.
lg
hasel
Hallo, ich bins noch mal Ich
am 04.09.2011 - 17:23 Uhr
Hallo,
ich bins noch mal Ich habe leider bisher keine Lösung gefunden. Hat vielleicht von Euch einer einen Tipp für mich wo ich zu Fehlerbehebung ansetzen könnte?
lg
hasel
hasel schriebbetter exposed
am 04.09.2011 - 22:34 Uhr
better exposed filters validation errors
Ähm, bist du wirklich sicher, dass diese Fehler vom Better Exposed Filter-Modul kommen? Ist die Seite valide, wenn du das Modul deaktivierst?
Edit: Wenn ich mir die Fehlermeldungen so angucke, scheint das Modul in der Tat Ärger zu machen, auch validieren die Seiten, auf denen das Modul nicht auftaucht, deutlich besser. Ich fürchte, da musst du dir im Modul den Part vornehmen, der den HTML-Code zusammenbaut, um da Abhilfe zu schaffen.
Guten Morgen Anton, vielen
am 05.09.2011 - 04:32 Uhr
Guten Morgen Anton,
vielen Dank ich werde mir den code mal anschauen und wenn ich nicht weiterkomme melde ich mich noch mal.
lg
hasel
so, jetzt habe ich mir noch
am 05.09.2011 - 05:31 Uhr
so,
jetzt habe ich mir noch mal den code angeschaut. Der code sieht wie folgt aus:
$checkbox = '<input type="checkbox" '
. 'name="' . $element['#name'] . '[]" ' // brackets are key -- just like select
. 'id="' . $id . '" '
. 'value="' . $value . '" '
. ($selected ? 'checked="checked" ' : '')
. drupal_attributes($element['#attributes']) . ' />';
$properties['#children'] = "$checkbox <label class='option' for='$id'>$label</label>";
$output = theme('form_element', array('element' => $properties));
return $output;
Diese Zeilen habe ich gelöscht:
. 'name="' . $element['#name'] . '[]" ' // brackets are key -- just like select
. 'id="' . $id . '" '
. 'value="' . $value . '" '
. ($selected ? 'checked="checked" ' : '')
Da ich im Moment nur ein gefährliches Halbwissen habe ;-) würde mich interessieren, ob ich das so lassen kann
Die Seite lädt ganz normal und auch die validation errors sind anscheinend behoben.
Edit:es sind eine Menge Fehler und Warnungen verschwunden nur diese bestimmten Fehler bestehen nach wie vor so wie es aussieht.
Über eine Antwort würde ich mich sehr freuen.
lg
hasel
hasel schriebDiese Zeilen
am 05.09.2011 - 07:13 Uhr
Diese Zeilen habe ich gelöscht: würde mich interessieren, ob ich das so lassen kann
Die gelöschten Zeilen müssen wieder rein, sonst funktioniert das Formular nicht richtig.
Deaktiviere (mit einem // ) stattdessen mal testweise nur diese Zeile
. 'name="' . $element['#name'] . '[]" ' // brackets are key -- just like select
Das name-Attribut wird auch über
drupal_attributes($element['#attributes'])
dem Input-Tag hinzugefügt und ist dadurch doppelt vorhanden, was dem Validator gar nicht gefällt.Hallo Anton, vieln Dank.
am 05.09.2011 - 13:08 Uhr
Hallo Anton,
vieln Dank. Durch auskommentieren der von Dir beschriebenen Zeile erhalte ich nur noch 112 Fehler und 54 Warnungen das ist ja schon ein guter Anfang schließlich waren es ja 165 ;-)
die Meldung mit dem:
Attribute multiple not allowed on element input at this point.
erhalte ich noch. Hast Du oder Ihr diesbezüglich noch eine Idee?
lg
hasel
Guten Morgen, ich komme
am 07.09.2011 - 07:33 Uhr
Guten Morgen,
ich komme leider nicht weiter mit der Validierung der Seite, kann mir von Euch jemand unter die Arme greifen? Vielleicht ein Tipp wie ich zu Lösung kommen kann?
Auch die google Suche brachte leider keine weiteren Erkenntnisse :-(
Über eine Antwort würde ich mich sehr freuen.
lg
hasel
unterstützung gesucht
am 11.09.2011 - 13:30 Uhr
Hallo,
kann mir da keiner weiter behilflich sein? zumindest wie ich zu Lösung kommen könnt. Ich bin so langsam am verzweifeln :-( Ein Teil meiner template.php sieht so aus:
<?php
function sucht_preprocess_page(&$vars) { $links = $vars['main_menu']; foreach ($links as $key => $link) { $links[$key]['html'] = true; if(isset($link['attributes']['title'])) { $links[$key]['attributes']['class'][] = 'primary-sub-link'; $links[$key]['title'] = $link['title'] . '' . $link['attributes']['title'] . ''; } else { $links[$key]['title'] = $link['title']; } } $vars['main_menu'] = $links; }
function sucht_form_element($variables) {
$element = &$variables['element'];
// This is also used in the installer, pre-database setup.
$t = get_t();
// This function is invoked as theme wrapper, but the rendered form element
// may not necessarily have been processed by form_builder().
$element += array(
'#title_display' => 'before',
);
// Add element #id for #type 'item'.
if (!empty($element['#id'])) {
$attributes['id'] = $element['#id'];
}
// Add element's #type and #name as class to aid with JS/CSS selectors.
$attributes['class'] = array('form-item');
if (!empty($element['#type'])) {
$attributes['class'][] = 'form-type-' . strtr($element['#type'], '_', '-');
}
if (!empty($element['#name'])) {
$attributes['class'][] = 'form-item-' . strtr($element['#name'], array(' ' => '-', '_' => '-', '[' => '-', ']' => ''));
}
// Add a class for disabled elements to facilitate cross-browser styling.
if (!empty($element['#attributes']['disabled'])) {
$attributes['class'][] = 'form-disabled';
}
$output = '<div' . drupal_attributes($attributes) . '>' . "\n";
// If #title is not set, we don't display any label or required marker.
if (!isset($element['#title'])) {
$element['#title_display'] = 'none';
}
$prefix = isset($element['#field_prefix']) ? '<span class="field-prefix">' . $element['#field_prefix'] . '</span> ' : '';
$suffix = isset($element['#field_suffix']) ? ' <span class="field-suffix">' . $element['#field_suffix'] . '</span>' : '';
switch ($element['#title_display']) {
case 'before':
case 'invisible':
$output .= ' ' . theme('form_element_label', $variables);
$output .= ' ' . $prefix . $element['#children'] . $suffix . "\n";
break;
case 'after':
$output .= ' ' . $prefix . $element['#children'] . $suffix;
$output .= ' ' . theme('form_element_label', $variables) . "\n";
break;
case 'none':
case 'attribute':
// Output no label and no required marker, only the children.
$output .= ' ' . $prefix . $element['#children'] . $suffix . "\n";
break;
}
if (!empty($element['#description'])) {
$output .= '<div class="description">' . $element['#description'] . "</div>\n";
}
$output .= "</div>\n";
return $output;
}
?>
Wenn ich diesen Teil auskommentiere sind nur noch 63 Fehler im Validator angezeigt. Mein Problem ist jetzt nur wo kann ich ansetzen um den Fehler zu beheben?
Über ein Tipp würde ich mich riesig freuen.
lg
hasel
Hallo liebe Alle, ich wollte
am 13.09.2011 - 19:33 Uhr
Hallo liebe Alle,
ich wollte noch mal kurz nachfragen, ob mir jemand behilflich sein kann ich bekomme es einfach nicht hin da meine PHP Kenntnisse gleich null sind und ich unbedingt auf diesem Gebiet was tun muss man stößt halt relativ schnell an seine Grenzen :-(
Der obige Code verursacht eine Menge Fehler, ich denke für einen Experten sicherlich nur eine kleine Umstellung
Ein leiser Hilferuf ;-)
Werner?
lg
hasel