Страница 1 из 2

модальное окно на главной странице

СообщениеДобавлено: 06 июл 2015, 11:00
lucky20071
Здравствуйте. На главной странице есть вкладка "связаться с нами". При клике на нее должно открываться модальное окно, но этого не происходит. Открывается страница формы booking/request. На остальных страницах все нормально, открывается модальное окно. Не пойму в чем дело. Ссылка на это окно в файле layouts/main.php. По сути должно срабатывать на всех страницах. Может кто знает, подскажите пожалуйста.

Re: модальное окно на главной странице

СообщениеДобавлено: 07 июл 2015, 09:53
lucky20071
Решил сделать свое модальное окно. В файл layouts/main вставил такой код
<?php
$this->beginWidget('zii.widgets.jui.CJuiDialog', array(
'id' => 'mydialog',
'options' => array(
'title' => 'Нет времени на поиски?
Оставьте заявку и наши менеджеры оперативно подберут варианты! ',
'autoOpen' => false,
'modal' => true,
'resizable'=> false,
'width'=> '500',
'height'=>'500',

),
));
$qForm = new QuickForm1;

$form = $this->beginWidget('CActiveForm', array(
'id' => 'quick-form',
'enableClientValidation' => true,
'clientOptions' => array(
'validateOnSubmit' => true,
),
'action' => array('/site/quick1'),
));
?>
<?php echo $form ->errorSummary($qForm); ?>
<table>
<tr>
<td>
<?php echo $form->labelEx($qForm,'name'); ?>
</td>
<td>
<?php echo $form->textField($qForm,'name', array('size'=>22)); ?>
<?php echo $form->error($qForm,'name'); ?>
</td>
<td>
<tr>
<td>
<?php echo $form->labelEx($qForm,'company'); ?>
</td>
<td>
<?php echo $form->textField($qForm,'company', array('size'=>22)); ?>
<?php echo $form->error($qForm,'company'); ?>
</td>
</tr>
<tr>
<td>
<?php echo $form->labelEx($qForm,'phone'); ?>
</td>
<td>
<?php echo $form->textField($qForm,'phone', array('size'=>22)); ?>
<?php echo $form->error($qForm,'phone'); ?>
</td>
</tr>
<tr>
<td>
<?php echo $form->labelEx($qForm,'email'); ?>
</td>
<td>
<?php echo $form->textField($qForm,'email', array('size'=>22)); ?>
<?php echo $form->error($qForm,'email'); ?>
</td>
</tr>
<tr>
<td>
<?php echo $form->labelEx($qForm,'type'); ?>
</td>
<td>
<?php echo $form->dropDownList($qForm,'type',array("Аренда склада"=>'Аренда склада',"Продажа склада"=>'Продажа склада',"Ответственное хранение"=>'Ответственное хранение')); ?>
<?php echo $form->error($qForm,'type'); ?>
</td>
</tr>
<tr>
<td>
<?php echo $form->labelEx($qForm,'message'); ?>
</td>
<td>
<?php echo $form->textArea($qForm,'message', array('rows'=>5,'cols'=>20)); ?>
<?php echo $form->error($qForm,'message'); ?>
</td>
</tr>
<tr>
<td>
Необходимая площадь:
</td>
<td>
<?php echo $form->labelEx($qForm,'squarefrom'); ?>
<?php echo $form->textField($qForm,'squarefrom', array('size'=>6)); ?>
<?php echo $form->error($qForm,'squarefrom'); ?>

<?php echo $form->labelEx($qForm,'squareto'); ?>
<?php echo $form->textField($qForm,'squareto', array('size'=>6)); ?>
<?php echo $form->error($qForm,'squareto'); ?>
</td>
</tr>
<tr>
<td>
</td>
<td style="text-align:left;">
<?php echo CHtml::submitButton('Отправить'); ?>
</td>
</tr>
</table>
<?php
$this->endWidget();
$this->endWidget('zii.widgets.jui.CJuiDialog');
?>
<?php echo CHtml::link('Оставьте номер', '#', array('onclick' => '$("#mydialog").dialog("open"); return false;',)); ?>

Но теперь оно всегда открыто на главной странице. На остальных страницах нормально, оно закрыто и открывается только при клике. Какие то чудеса на главной странице творятся, не работают модальные окна. Может кто сталкивался, подскажите.

Re: модальное окно на главной странице

СообщениеДобавлено: 08 июл 2015, 11:07
Foton
Возможно на главной есть JS ошибки

Re: модальное окно на главной странице

СообщениеДобавлено: 08 июл 2015, 13:47
lucky20071
знать бы еще в в каком файле этот js. явно не в main.php, потому что менял его на изначальный, все тоже самое.

Re: модальное окно на главной странице

СообщениеДобавлено: 09 июл 2015, 12:42
Foton
Нужно для начала поставить плагин FireBug для Firefox и посомтреть в консоли, есть ли JS ошибки

Re: модальное окно на главной странице

СообщениеДобавлено: 09 июл 2015, 16:07
lucky20071
Посмотрел в firebug ошибки JS. Выдает такие 2 ошибки.
SyntaxError: expected expression, got '<' g?g=6cd...62a8fab (строка 1)
<br />

TypeError: $.cookie is not a function ?ls=map (строка 1092, столбец 3)


Не совсем понял, это строки чего, в каких файлах?

Re: модальное окно на главной странице

СообщениеДобавлено: 10 июл 2015, 12:00
Foton
Странные ошибки, смотреть нужно что именно не так

Re: модальное окно на главной странице

СообщениеДобавлено: 10 июл 2015, 13:47
lucky20071
Вот ссылка на сайт sklad7.pe.hu
На нем сейчас стандартное модальное окно из коробки. Должно срабатывать при клике на "Оставьте заявку". Только оно не срабатывает на главной, на остальных открывается. Ошибки в firebug те же. Когда удаляю стандартное окно а ставлю свое , то оно всегда открыто.

Re: модальное окно на главной странице

СообщениеДобавлено: 10 июл 2015, 14:07
Foton
для начала нужно отключить минификатор viewtopic.php?f=8&t=866#p4490 , может быть станет понятнее в чём ошибка JS

Re: модальное окно на главной странице

СообщениеДобавлено: 10 июл 2015, 15:22
andipas
lucky20071 писал(а):Вот ссылка на сайт sklad7.pe.hu
На нем сейчас стандартное модальное окно из коробки. Должно срабатывать при клике на "Оставьте заявку". Только оно не срабатывает на главной, на остальных открывается. Ошибки в firebug те же. Когда удаляю стандартное окно а ставлю свое , то оно всегда открыто.


Попробуйте в контролере в экшене обработчика формы прописать

Код: Выделить всё
if(Yii::app()->request->isAjaxRequest){
   
$this->excludeJs();
}
 


или в коде самой формы:

Код: Выделить всё

Yii
::app()->controller->excludeJs();