2017-01-21 1 views
0

Immer, wenn ich ein Formular mit Ajax absende, wird das Element, das das Senden ausgelöst hat, im Fokus stehen. Ich möchte dieses Verhalten nicht, wenn ich unendlich scroll benutze und den Benutzer unten auf der Seite belassen möchte. Wie behebe ich das?Wie verhindere ich, dass sich Drupal auf Elemente konzentriert, die Ajax-Submit auslösen?

Fokus kehrt zu diesem Element:

 $form['submit'] = [ 
     '#type' => 'submit', 
     '#value' => $this->t('Search'), 
     '#attributes' => [ 
      'class' => [ 
       'btn', 
       'btn-md', 
       'btn-primary', 
       'use-ajax-submit' 
      ] 
     ], 
     '#ajax' => [ 
      'wrapper' => $wrapper, 
     ] 
    ]; 

Antwort

0

Um dieses Problem zu lösen, habe ich folgende Änderungen hinzugefügt:

$form['submit'] = [ 
     '#type' => 'submit', 
     '#value' => $this->t('Search'), 
     '#attributes' => [ 
      'class' => [ 
       'btn', 
       'btn-md', 
       'btn-primary', 
       'use-ajax-submit' 
      ] 
     ], 
     '#ajax' => [ 
      'wrapper' => $wrapper, 
      'disable-refocus' => true 
     ] 
    ]; 

Die disable-refocus Flag verhindert die automatische Neuausrichtung.

Siehe: Focus state bug on text field AJAX calls

Verwandte Themen