src/Combo.php
protected function renderInput($type = null)
    {
        $html = [];
        if ($this->inputOptions['readonly']) {
            // As it was said in comments of `init` method, the `select` element does not support property `readonly`.
            // However, disabled select will not be submitted.
            // Solution: render hidden input to submit the attribue value.
            $html[] = Html::activeHiddenInput($this->model, $this->attribute, [
                'id' => $this->inputOptions['id'] . '-hidden',
            ]);
        }
        $html[] = Html::activeDropDownList($this->model, $this->attribute, $this->getCurrentOptions(), $this->inputOptions);

        return implode('', $html);
    }
protected function renderInput($type = null)
    {
        $html = [];
        if ($this->inputOptions['readonly']) {
            // As it was said in comments of `init` method, the `select` element does not support property `readonly`.
            // However, disabled select will not be submitted.
            // Solution: render hidden input to submit the attribue value.
            $html[] = Html::activeHiddenInput($this->model, $this->attribute, [
                'id' => $this->inputOptions['id'] . '-hidden',
            ]);
        }
        $html[] = Html::activeDropDownList($this->model, $this->attribute, $this->getCurrentOptions(), $this->inputOptions);

        return implode('', $html);
    }
Renders text input that will be used by the plugin.
Must apply [[inputOptions]] to the HTML element.

@param string $type for compatible reasons. Should not be used
@return string