Ergebnis 1 bis 3 von 3

Thema: Formular mit "radio button"

  1. #1
    lionel
    Gast

    Standard Formular mit "radio button"

    Hallo,

    Seit die Version 2.10.x, haben wir ein fieldset mit Radio-Button. Wenn ich mein Formular erstelle, Ich benutze eine Struktur als Tabelle. Leider ist das Label der Radio-Button nicht korrekt platziert.

    Ein Teil der Template-Code:
    HTML-Code:
    <table cellspacing="0" cellpadding="0" summary="Form fields">
        <?php foreach ($this->fields as $objWidget): ?>
    
            <?php echo $objWidget->parse(); ?>
    
        <?php endforeach; ?>
    </table>
    Quellcode:
    HTML-Code:
    <tr class="">
        <td class="col_0 col_first">
            &nbsp;
        </td>
        <td class="col_1 col_last">
            <fieldset id="ctrl_customer_title" class="radio_container">
                <legend>Civilité</legend>
                <input type="hidden" name="customer_title" value="">
                <span>
                    <input type="radio" name="customer_title" id="opt_customer_title_0" class="radio" value="male">
                    <label id="lbl_customer_title_0" for="opt_customer_title_0">Monsieur</label></span>
                <span>
                    <input type="radio" name="customer_title" id="opt_customer_title_1" class="radio" value="female">
                    <label id="lbl_customer_title_1" for="opt_customer_title_1">Madame</label>
                </span>
            </fieldset>
        </td>
    </tr>
    
    <tr class="">
        <td class="col_0 col_first">
            <label for="ctrl_customer_firstname" class="mandatory"><span class="invisible">Champ obligatoire</span> Prénom<span class="mandatory">*</span></label>
        </td>
        <td class="col_1 col_last">
            <input type="text" name="customer_firstname" id="ctrl_customer_firstname" class="text mandatory" value="" maxlength="64">
        </td>
    </tr>
    Ein Teil der PHP-Code:
    Code:
    $arrFields = array
                (
                'customer_title' => array
                    (
                    'name' => 'customer_title',
                    'label' => &$GLOBALS['TL_LANG']['MSC']['customer_title'],
                    'inputType' => 'radio',
                    'options' => array('male', 'female'),
                    'reference' => &$GLOBALS['TL_LANG']['MSC'],
                    'eval' => array('includeBlankOption' => false, 'tl_class' => 'w50')
                ),
                'customer_firstname' => array
                    (
                    'name' => 'customer_firstname',
                    'label' => &$GLOBALS['TL_LANG']['MSC']['customer_firstname'],
                    'inputType' => 'text',
                    'eval' => array('rgxp' => 'alnum', 'maxlength' => 64, 'mandatory' => true)
                ),
    ...
    ...
    Alle die Informationen über den Radio-Button sind in der zweiten td. (<td class="col_1 col_last">)

    Wie kann ich das ändern / reorganisieren ?

    Danke !

  2. #2
    Contao-Nutzer
    Registriert seit
    10.08.2009.
    Beiträge
    105

    Standard

    Ich würde das Thema gern nochmal auffrischen da ich vor der selben Problematik stehe.

    Ist es irgendwie möglich das Label in die erste Spalte zu schreiben?

  3. #3
    lionel
    Gast

    Standard

    Hallo,

    Zitat Zitat von RobertB
    Ist es irgendwie möglich das Label in die erste Spalte zu schreiben?
    Leider nicht mit den obigen Code... Wir müssen die Struktur des Formulars selbst zu erstellen.

    Ich habe das gemacht:

    Code:
    // Das Feld mit Radio-Button
    echo $this->fields['customer_title']->parse();
    
    // Das Feld mit den Radio-Button ist der erste von meiner Tabelle. Ich lösche dieses Feld.
    $fieldsWithoutCustomerTitle = array_slice($this->fields, 1);
    
    // Die anderen Felder sind zwischen den Absätzen. Ansonsten können die Felder auch in einer Tabelle sein.
    foreach ($fieldsWithoutCustomerTitle as $objWidget):
    echo '<p>';
    echo $objWidget->parse();
    echo '</p>';
    endforeach;
    Für deaktivieren die automatische Erstellung der Struktur mit der Tabelle :

    Code:
    $arrField['eval']['tableless'] = TRUE;

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •