Убрать подключение jQuery при запросе через ajax

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
vasil14
Сообщения: 67
Зарегистрирован: 2011.02.09, 02:15

Убрать подключение jQuery при запросе через ajax

Сообщение vasil14 »

Ajax генерирует запрос на сервер. В результате получаем html контент + js код который требуется исполнить. js код пишу через Yii::app()->clientScript->registerScript. Код примерно такой

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

<?php
class TestController extends Controller {
    public function actionAjax() {
        $this->layout=false;
        $this->render('_ajax_content');
    }
}
 
И view _ajax_content

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

<?php 
Yii::app()->clientScript->registerScript('test', "$('#aaa').click(function(){alert('click ok')})");
?>
<div id="aaa">click</div>
В результате все работает только при каждом запросе вижу что подгружается еще и jquery. Что не требуется поскольку когда страница загрузилась jquery уже подключен. И хоть код что грузится через аякс его использует грузить еще раз не требуется. Что подскажете с этим поделать?

Аватара пользователя
because
Сообщения: 689
Зарегистрирован: 2010.09.30, 22:01

Re: Убрать подключение jQuery при запросе через ajax

Сообщение because »

Yii::app()->clientscript->scriptMap['jquery'] = false; - может неточно, но вроде как-то так
RTFM !

Johnatan
Сообщения: 167
Зарегистрирован: 2010.10.27, 13:06
Откуда: Reino de España

Re: Убрать подключение jQuery при запросе через ajax

Сообщение Johnatan »

вместо

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

$this->layout=false;
$this->render('_ajax_content'); 
используйте

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

$this->renderPartial('_ajax_content'); 
Конференция: yii@conference.jabber.ru


vasil14
Сообщения: 67
Зарегистрирован: 2011.02.09, 02:15

Re: Убрать подключение jQuery при запросе через ajax

Сообщение vasil14 »

см строку 612
См пост
Спасибо но это не решение. В моем случае подгружаемый js код весьма объемный. И главное что он не всегда должен загружаться на страницу, а только если пользователь открыл соответствующую вкладку. Потому я считаю более правильным грузить его именно когда загружается этот самый код. На счет 612 я знал что использование registerScript ведет за собой регистрацию jQuery. Но писать js код просто в хтмл через script считаю тоже не совсем соответствующим стилю фреймворка.

vasil14
Сообщения: 67
Зарегистрирован: 2011.02.09, 02:15

Re: Убрать подключение jQuery при запросе через ajax

Сообщение vasil14 »

Yii::app()->clientscript->scriptMap['jquery'] = false; - может неточно, но вроде как-то так
Спасибо. Это скорее всего то что мне нужно.

bookin
Сообщения: 37
Зарегистрирован: 2011.01.28, 12:43

Re: Убрать подключение jQuery при запросе через ajax

Сообщение bookin »

нашли ли вы выход?, та же проблема

AlTiger
Сообщения: 199
Зарегистрирован: 2012.01.15, 18:37

Re: Убрать подключение jQuery при запросе через ajax

Сообщение AlTiger »

$this->renderPartial();
Yii::app()->end();

Ответить