@cubooks
Web-developer

Как решить проблему с формами Yii?

Добрый день. Возникла проблема с формами, а именно не могу понять, как сделать, чтобы подключался js-код.

Если создать форму на той же стр., то всё будет работать.

https://yadi.sk/i/ZM_i0iikhnLwB

Но моя задача состоит в том, чтобы создавать форму динамически, через ajax. Допустим, мы добавляем на страницу код, представленный ниже, через ajax:

<?php $form = $this->beginWidget('UActiveForm', array(
		'id' => 'service-order-form-data',
		'enableAjaxValidation' => true,
		'clientOptions' => array(
			'validateOnSubmit' => true,
			'beforeValidate'=>'js:formServiceBeforeValidate',
			'afterValidate'=>'js:formServiceAfterValidate',
			'inputContainer' => 'fieldset',
			'successCssClass' => 'b-form-correct-fieldset',
			'errorCssClass' => 'b-form-wrong-fieldset',
			'validatingCssClass' => 'b-form-processed-fieldset',
		),
		'htmlOptions' => array(
			'class' => 'b-form b-order-form g-cleared',
		),
	)); ?>

	<fieldset class="b-form-fieldset b-form-required-fieldset">
		<?php echo $form->labelEx($dataOrder, 'comment', array('class' => 'b-form-fieldset-description')); ?>
		<?php echo $form->textArea($dataOrder, 'comment', array('class' => 'b-form-fieldset-text-input', 'style'  => 'height: 100px')); ?>
		<?php echo $form->error($dataOrder, 'comment', array('class' => 'b-form-fieldset-error')); ?>
	</fieldset>


	<fieldset class="b-form-fieldset b-form-submit-fieldset">
		<input class="b-form-fieldset-submit-input" id="store-order-form-canceled-submit" type="submit">
	</fieldset>

	<?php $this->endWidget(); ?>


Js-код для данной формы не сгенерируется. Как можно решить данную проблему, господа? Как вариант, я предполагаю, нужно сделать вызов функции, которая выведет сгенерированный код.
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
@cubooks Автор вопроса
Web-developer
Решение - нужно сделать правильный рендер.

$this->renderPartial('tmpl', array(
 'dataOrder' => $dataOrder,
), true, true);


первый true - записать код в строку
второй true - запустить js-скрипты
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы