tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
308
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    loonybin Tutorials.de Gastzugang
    wir (zwei Programmierer) haben eine kleine schwierigkeit. wir haben ein fomular bzw ein feld wessen wir die höhe und breite über javascript berechnen d.h. wen ich bei der breite etwas eingebe wird die höhe automatisch davon berechnet. soweit so gut. jetzt ist es so das der focus() auf zurücksetzten gestellt ist und nicht auf weiter.

    unser problem ist jetzt das wir es nicht schaffen diesen focus auf weiter zu setzten. zu beachten ist das es im hintergrund ein cms lauft. es nennt sich drupal der version 5.x

    habt ihr eine idee?

    wären um jede hilfe dankbar.
     

  2. #2
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    könntest du mal kurz erläutern, welche Auswirkungen es bei euch hat, wenn man den Fokus auf zurücksetzen stellt?
    Denn das originale JS- focus() ansich kann man nicht auf irgendetwas stellen....man gibt ihn lediglich an ein Element.
     

  3. #3
    loonybin Tutorials.de Gastzugang
    das kann ich. also zurücksetzten heist das das hochgeladene bild aus der session gelöscht wird und de defaults geladen wird. das heist. also das dan die bildhöhe 70 ist und die breite 50.

    hier ist der code wo das ganze erzeugt wird. also bildberechnung (höhe,breite) und das absenden.


    //Eingabefeld für die Bildhöhe
    $form['height'] = array(
    //'#prefix' => '<div style="float:left;margin-right:20px;">',
    //'#suffix' => '</div>',
    '#type' => 'textfield',
    '#title' => 'Höhe',
    '#size' => 3,
    '#default_value' => $height_cm,
    '#suffix' => '</td><td style="padding:0px 0px 13px 0px;" align="left" valign="bottom"><span style="font-size:0.8em;">min 40 cm / max 100 cm</span></td></tr></table><div style="clear:both;"></div>',
    '#id' => 'df_height',
    '#prefix' => '<div id="error"></div><table style="margin:0px;"><tr><td style="padding:0px;">',
    '#attributes' => array('onkeyup' => 'xajax_update_prize(this.value, document.getElementById(\'df_width\').value, this.id);'),
    );
    //Eingabefeld füt Bildbreite
    $form['width'] = array(

    '#type' => 'textfield',
    '#title' => 'Breite',
    '#size' => 3,
    '#default_value' => $width_cm,
    '#suffix' => '</td><td style="padding:0px 0px 13px 0px;" align="left" valign="bottom"><span style="font-size:0.8em;">min 40 cm / max 100 cm</span></td></tr></table><div style="clear:both;"></div>',
    '#id' => 'df_width',
    '#prefix' => '<div id="error"></div><table style="margin:0px;"><tr><td style="padding:0px;">',
    '#attributes' => array('onkeyup' => 'xajax_update_prize(document.getElementById(\'df_height\').value, this.value, this.id);'),
    );
    //Der berechnete Preis
    $form['calculated_prize'] = array(
    '#type' => 'hidden',
    '#value' => 5,
    '#prefix' => '<div id="calculated_prize"><font size="5">CHF '.$prize.' .-</font></div>'.$upload,
    '#suffix' => '</td><td align="center" valign="top" style="border-left:20px white solid;width:400px;background-color:#49A8EC;">',
    '#id' => 'df_prize',
    );
    //Die Bildvorschau
    $form['preview_picture'] = array(
    '#type' => 'hidden',
    '#value' => 5,
    '#prefix' => '

    <table style="width:auto;">
    <tr>
    <td align="right" valign="middle">
    </td>
    <td align="right" valign="middle">
    <div id="preview_picture" style="width:'.$width_px.'px;height:'.$height_px.'px;background-color:white;border-style:solid;border-color:grey;border-width:5px;">'.$img_preview.'</div>
    </td>
    <td align="left" valign="middle" >
    <div id="calculated_height">Höhe<br>'.$height_cm.' cm</div>
    </td>
    </tr>
    <tr>
    <td>
    </td>
    <td align="center" valign="top">
    <div id="calculated_width">Breite<br>'.$width_cm.' cm</div>
    </td>
    <td>
    </td>
    </tr>
    </table>',
    '#id' => 'df_preview_picture',

    );
    $form['submit1'] = array(
    '#type' => 'submit',
    '#value' => t('Zurücksetzen'),
    );
    //Wenn bereits ein Bild hochgeladen ist, dann den Weiter Button präsentieren
    if($df_image->filename){
    $form['submit2'] = array(
    '#type' => 'submit',
    '#value' => t('Weiter'),
    '#suffix' => '</td></tr></table></div>'
    );
    }
    else {
    $form['submit2'] = array(
    '#type' => 'submit',
    '#value' => t('Weiter ohne Bildupload'),
    '#suffix' => '</td></tr></table></div>'
    );
    }
    return $form;
    }
     

  4. #4
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Mmmmh, so recht verstehe ich es immer noch nicht

    Meinst du etwas diesen Submit-Button da,
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    
    [COLOR="Red"]$form['submit1'] = array(
    '#type' => 'submit',
    '#value' => t('Zurücksetzen'),
    );[/COLOR]
    //Wenn bereits ein Bild hochgeladen ist, dann den Weiter Button präsentieren
    if($df_image->filename){
    [COLOR="DarkOliveGreen"]$form['submit2'] = array(
    '#type' => 'submit',
    '#value' => t('Weiter'),
    '#suffix' => '</td></tr></table></div>'
    );[/COLOR]
    }
    else {
    $form['submit2'] = array(
    '#type' => 'submit',
    '#value' => t('Weiter ohne Bildupload'),
    '#suffix' => '</td></tr></table></div>'
    );

    Dass momentan der Fokus immer auf dem 1.(rot markierten) Button ist, ihr ihn aber auf dem 2.(grün markierten) haben wollt.?

    Um das zu sagen, wäre es gut, wenn du mal den gesamten generierten HTML-Code dieses Formulars posten könntest, damit man sehen kann, wie man den Button am besten anspricht.

    Generell würde es so laufen:
    Code :
    1
    
    document.namedesformulars.namedeszweitenbuttons.focus()
    (wobei dort mit name wirklich das name-Attribut gemeint ist, und nicht eine ID)
     

  5. #5
    loonybin Tutorials.de Gastzugang
    muss den html code zuerst generieren da er ja über das cms drupal v5.x gemacht wird und wir mit php objektorientiert programmieren wird das etwas schwierger aber werde mal versuchen das so zu posten.

    um erlich zu sein du hast es geschaft mich zu verstehen das wir den zweiten submit button wollen das dort der fokus gesetzt ist.

    *sorry für die spähte antwort* hatten in der schweiz den nationalfeiertag gehabt
     

  6. #6
    loonybin Tutorials.de Gastzugang
    schwierigkeit konnte gelöst werden. wir haben drupal sozusagen umgangen bzw gesaagt dases in drupal einen fehler gibt aber mit einem unsichtbaren button behoben werden kann.

    thread kann geschlossen werden. danke für die hilfe.
     

Ähnliche Themen

  1. Focus?
    Von xyberyzhon im Forum Flash Plattform
    Antworten: 0
    Letzter Beitrag: 10.09.08, 16:04
  2. focus auf anwendung
    Von mor45kon im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 5
    Letzter Beitrag: 27.05.08, 09:49
  3. Focus setzen
    Von savior01 im Forum Javascript & Ajax
    Antworten: 0
    Letzter Beitrag: 31.01.08, 09:57
  4. focus?
    Von wachteldonk im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 30.10.07, 08:30
  5. Focus Listener(Focus lost)
    Von BLOEBAUM im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 4
    Letzter Beitrag: 11.01.06, 09:19