Nette\Forms\Form::getElementPrototype PHP Method

getElementPrototype() public method

Returns form's HTML element template.
public getElementPrototype ( ) : Nette\Utils\Html
return Nette\Utils\Html
    public function getElementPrototype()
    {
        if (!$this->element) {
            $this->element = Nette\Utils\Html::el('form');
            $this->element->action = '';
            // RFC 1808 -> empty uri means 'this'
            $this->element->method = self::POST;
        }
        return $this->element;
    }

Usage Example

 /**
  * Renders form end.
  *
  * @return string
  */
 public static function renderFormEnd(Form $form)
 {
     $s = '';
     if (strcasecmp($form->getMethod(), 'get') === 0) {
         $url = explode('?', $form->getElementPrototype()->action, 2);
         if (isset($url[1])) {
             foreach (preg_split('#[;&]#', $url[1]) as $param) {
                 $parts = explode('=', $param, 2);
                 $name = urldecode($parts[0]);
                 if (!isset($form[$name])) {
                     $s .= Nette\Utils\Html::el('input', array('type' => 'hidden', 'name' => $name, 'value' => urldecode($parts[1])));
                 }
             }
         }
     }
     foreach ($form->getComponents(true, 'Nette\\Forms\\Controls\\HiddenField') as $control) {
         if (!$control->getOption('rendered')) {
             $s .= $control->getControl();
         }
     }
     if (iterator_count($form->getComponents(true, 'Nette\\Forms\\Controls\\TextInput')) < 2) {
         $s .= '<!--[if IE]><input type=IEbug disabled style="display:none"><![endif]-->';
     }
     echo ($s ? "<div>{$s}</div>\n" : '') . $form->getElementPrototype()->endTag() . "\n";
 }
All Usage Examples Of Nette\Forms\Form::getElementPrototype