getHtmlId() public method

Returns control's HTML id.
public getHtmlId ( ) : string
return string
Example #1
0
 public function attached($form)
 {
     if ($form instanceof Form) {
         /** @var Nette\Forms\Container $container */
         $container = $this->getParent();
         $container->addComponent($this->wrappedControl, $this->componentName);
         $container->addComponent($this->applyButton, $this->componentName . '_apply');
         $this->applyButton->controlPrototype->{'data-apply-button'} = $this->wrappedControl->getHtmlId();
     }
 }
 /**
  * Create button if no button is attached to control
  * @return Was button created or not?
  */
 public function createButton()
 {
     if ($this->button !== null) {
         return false;
     }
     if ($this->isAnyButtonAttached()) {
         $this->button = $this->getAnyAttachedButton(true);
         $this->buttonText = $this->button->getLabel();
         $this->buttonPosition = self::POSITION_UNDEFINED;
         return false;
     }
     // add $this->controlClass to $this->control if not added yet
     $this->updateControlClass();
     // create button
     if ($this->buttonText === null) {
         throw new InvalidArgumentException("Null caption of button is crappy *** !!! (ajax not working properly)");
     }
     $container = $this->control->lookup('Nette\\Forms\\Container');
     $this->button = new SubmitButton($this->buttonText);
     $this->button->setValidationScope(false);
     $this->button->getControlPrototype()->class($this->controlClass . self::$buttonSuffix);
     $this->button->setHtmlId($this->control->getHtmlId() . self::$buttonSuffix);
     $buttonName = $this->formatButtonName($this->control->getName());
     switch ($this->buttonPosition) {
         case self::POSITION_DEFAULT:
             $container->addComponent($this->button, $buttonName);
             break;
         case self::POSITION_BEFORE_CONTROL:
             $container->addComponent($this->button, $buttonName, $this->control->getName());
             break;
         case self::POSITION_AFTER_CONTROL:
             // Uhm :(
             $findName = $this->control->getName();
             $nextName = null;
             $found = false;
             $components = $container->getComponents(true);
             foreach ($components as $name => $component) {
                 if ($found === true) {
                     $nextName = $name;
                     break;
                 }
                 if ($name == $findName) {
                     $found = true;
                 }
             }
             if ($nextName === null) {
                 $container->addComponent($this->button, $buttonName);
             } else {
                 $container->addComponent($this->button, $buttonName, $nextName);
             }
             break;
         default:
             throw new InvalidArgumentException("Ivalid position value !");
     }
     return true;
 }