<?php namespace nur\v\plugins; use nur\v\BasePlugin; use nur\v\js; /** * Class autosubmitSelectPlugin: soumet le formulaire sur l'événement change */ class autosubmitOnEventPlugin extends BasePlugin { const HAVE_JQUERY = true; function __construct(string $selector, string $event="change", bool $cond=true) { $this->selector = $selector; $this->event = $event; $this->cond = $cond; } /** * @var string sélecteur pour les composants concernés. */ private $selector; /** @var string événement sur lequel déclencher la soumission du formulaire */ private $event; /** @var bool ce plugin est-il activé? */ private $cond; function printJquery(): void { if (!$this->cond) return; ?> $(<?=js::qv($this->selector)?>).on(<?=js::qv($this->event)?>, function() { $(this).closest("form").submit(); return false; }); <?php } }