Gwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywnaGwiazdka nieaktywna
 

Wszystkie formularze, które tworzymy potrzebują przycisku Anuluj. Jednym ze sposobów jest dodanie do przycisku zdarzenia onclick. Za pomocą obiektu window.location uzyskujemy adres url, na który zostaniemy przekierowani po naciśnięciu przycisku Anuluj (Listing 3).

Tworzenie przycisku Anuluj w formularzu ExampleForm zaprezentowano na Listingu 1, Listingu 2, Listingu 3. 

 

Listing 1. Plik formularza ExampleForm.php

// Zend Framework podstawy
...
use Zend\Form\Element\Button;

class ExampleForm extends Form implements InputFilterProviderInterface {
public function __construct($name='example-form', $options = array()) {
   // Pola formularza
   ...
   // Przycisk Anuluj w formularzu
   $this->add([
      'name' => 'button_cancel',
      'type' => Button::class,
      'options' => [
         'label' => 'Anuluj',
      ],
      'attributes' => [
         'value' => 'cancel'
      ],
   ]);
   // Przycisk Submit
   ...
   }
   ...
}

 

Listing 2. Utworzenie obiektu formularza w pliku IndexController.php

// Zend Framework podstawy
...
class IndexController extends AbstractActionController {
   ...
   public function exampleAction() {
      $exampleForm = new ExampleForm();
      ...
      return new ViewModel(array(
         'exampleForm' => $exampleForm
      ));
   }
   ...
}

 

Listing 3. Plik widoku example.phtml

// Zend Framework podstawy
...
$form = $this->exampleForm;
...
$action = $this->url('example/show', array('controller' => 'index', 'action' => 'index'));
$cancel = $form->get('button_cancel');
$cancel->setAttribute('onClick', "window.location='{$action}'");
...
<?= $this->formButton($cancel); ?>
...
 

 

Wybrane książki:

Wybrane strony:

Książki Helion