Qcube/Qcodo динамические поля ввода

У кого-нибудь есть пример, как я могу динамически добавлять поля ввода в мой проект qcubed? Спасибо!

1 ответ

Вы можете использовать элемент управления QPanel для добавления элементов управления на лету. Просто установите для его атрибута AutoRenderChildren значение true и установите для родительского элемента динамического управления значение QPanel.

// Instantiate our QPanel - this will render a div to contain our dynamic controls
// Note that the parent is $this. You will need to call render in your template
$this->pnl = new QPanel($this);
// Setting AutoRenderChildren so that the Panel will handle Rendering our dynamic
// controls.
$this->pnl->AutoRenderChildren = true;
// Creating a button with an Ajax action to create our dynamic controls
$this->btn = new QButton($this);
$this->btn->Text = "Add Control";
$this->btn->AddAction(new QClickEvent(), new QAjaxAction('btn_Click'));

protected function btn_Click($strFormId, $strControlId, $strParameter) {
    // create the control and set its parent to the QPanel 
    $ctl = new QTextBox($this->pnl);        
}

Вы можете получить больше информации об использовании QPanels на веб-сайте примеров QCubed.

Пример QCubed QPanel

Другие вопросы по тегам