mIRU
mIRU

Reputation: 617

Yii unload bootstrap plugin on ajax request

i installed this extension http://www.cniska.net/yii-bootstrap/ , is possible when i make an ajax request to unload from 'preload'=>array('bootstrap','log'), : bootstrap ,i don't need to use bootstrap on ajax request , how to avoid that

<link rel="stylesheet" type="text/css" href="/tamada/assets/97e8be51/css/bootstrap.min.css" />
Content updated in AJAX<script type="text/javascript" src="/tamada/assets/cb84ef9f/jquery.min.js"></script>
<script type="text/javascript" src="/tamada/assets/97e8be51/js/bootstrap-button.js"></script>
<script type="text/javascript" src="/tamada/assets/97e8be51/js/bootstrap-tooltip.js"></script>
<script type="text/javascript" src="/tamada/assets/97e8be51/js/bootstrap-popover.js"></script>
<script type="text/javascript">
/*<![CDATA[*/
jQuery('a[rel="tooltip"]').tooltip();
jQuery('a[rel="popover"]').popover();
/*]]>*/
</script>

Thank You A LOT , sorry for my english

Upvotes: 0

Views: 1894

Answers (2)

FabianoLothor
FabianoLothor

Reputation: 2985

Please, read: Yii + AJAX = Duplicate ClientScripts.

Upvotes: 1

LostSalad
LostSalad

Reputation: 398

You can selectively load it in your config/main.php.

This might not be the best PHP but it should work. Basically, when loading the config, check whether the request is an AJAX request or not using Yii::app()->request->isAjaxRequest.

Add to top of config/main.php:

<?php

// Load it by default
$preload = array('bootstrap');

// Don't load it for AJAX requests
if (Yii::app()->request->isAjaxRequest) {
    $preload = array();
}

Then pull in the module (either toggled on or off) using array_merge:

// preloading 'log' component (with selective bootstrap component)
'preload'=>array_merge(array('log'), $preload),

Now when you do an AJAX request to your application the bootstrap module should not be loaded.

Upvotes: 1

Related Questions