Hello every1,
i have a problem with understanding renderPartial. I have one view, that renders 2 more views inside view JS.
In controller i have 2 functions, that render those 2 views:
In this view shippingDeploymentDay i have DateTimePickers. If i add "false,true" at the end, i get errors:
Uncaught TypeError: Object [object Object] has no method 'modal'
Uncaught TypeError: Object [object Object] has no method 'popover'
If i add "false,true" i have no errors, but the Timepickers doesn't work...
Can anyone tell me what i am doing wrong with renderPartial?
[EDIT] In my rendered view i have a button to submit a form:
Allthough "obj.url" is right url, i checked it with alert(obj.url) this function "window.location.href = obj.url;" doesnt redirect me to the URL.
i have a problem with understanding renderPartial. I have one view, that renders 2 more views inside view JS.
... <div id="data"></div> <div id="dayData"></div> ... $.post('/hr/userDeployment/shippingDeploymentCalendar', {date: date,YII_CSRF_TOKEN:token}, function(data) { $('#data').html(data); }); $.post('/hr/userDeployment/shippingDeploymentDay', {date: date,YII_CSRF_TOKEN:token}, function(data) { $("#dayData").html(data); var details = $("table#calendar td.calendar-current-day div.calendar-text").text(); var substr = details.split(' / '); $("#dayDetails").html(need+": "+substr[1]+"<br/>"+planned+": "+substr[0]); }); function previousMonth(user_id) { date = date.previous().month(); $.post('/hr/userDeployment/shippingDeploymentCalendar', {date: date.toString('yyyy-MM-dd'),YII_CSRF_TOKEN:token}, function(data) { $("#data").html(data); }); $("#currentdate").html(date.toString('MM.yyyy')); } function nextMonth(user_id) { date = date.next().month(); $.post('/hr/userDeployment/shippingDeploymentCalendar', {date: date.toString('yyyy-MM-dd'),YII_CSRF_TOKEN:token}, function(data) { $("#data").html(data); }); $("#currentdate").html(date.toString('MM.yyyy')); } jQuery(function($) { $("#calendar td").click(function(e) { if (typeof $(this).attr('id') !== 'undefined') { calendarItemClicked(($(this).attr('id'))); e.stopPropagation(); } }); }); ....
In controller i have 2 functions, that render those 2 views:
public function actionShippingDeploymentDay() { if (Yii::app() -> request -> isAjaxRequest && isset($_POST['date'])) { $date = $_POST['date']; $criteria = new CDbCriteria; $criteria -> condition = 'DATE(fromDate)=DATE("' . $date . '")'; $dataProvider = new CActiveDataProvider(new UserDeployment, array( 'criteria' => $criteria, 'sort' => array('defaultOrder' => 'fromDate ASC'), 'pagination' => array('pageSize' => 100), )); return $this -> renderPartial('_shippingDay', array('dataProvider'=>$dataProvider,'date'=>$date),false,true); } }
In this view shippingDeploymentDay i have DateTimePickers. If i add "false,true" at the end, i get errors:
Uncaught TypeError: Object [object Object] has no method 'modal'
Uncaught TypeError: Object [object Object] has no method 'popover'
If i add "false,true" i have no errors, but the Timepickers doesn't work...
Can anyone tell me what i am doing wrong with renderPartial?
[EDIT] In my rendered view i have a button to submit a form:
<?php $this -> widget('bootstrap.widgets.TbButton', array( 'buttonType' => 'ajaxSubmit', 'icon' => 'ok', 'url' => Yii::app() -> createUrl('hr/userDeployment/createShipping'), 'label' => 'Submit', 'ajaxOptions' => array('success' => 'function(data){ Loading.show(); var obj = $.parseJSON(data); if(obj.status=="success"){ $("#newUserDeployment").modal("hide"); Loading.hide(); window.location.href = obj.url; } else { Loading.hide(); $("#userDeployment-form-error-div").show(); $("#userDeployment-form-error-div").html(""); var $inputs = $("#user-time-form :input"); $inputs.each(function() { $(this).removeClass("error"); $(this).closest(\'div[class^="control-group"]\').addClass("success validating"); }); for (var p in obj) { if(document.getElementById(p)) { $("#"+p).closest(\'div[class^="control-group"]\').removeClass("success"); $("#"+p).closest(\'div[class^="control-group"]\').addClass("error"); } $("#userDeployment-form-error-div").append(obj[p] + "<br/>"); } } }'), )); $this -> endWidget(); Yii::app() -> controller -> widget('bootstrap.widgets.TbButton', array( 'label' => 'Close', 'url' => '#', 'htmlOptions' => array('data-dismiss' => 'modal'), )); $this -> endWidget(); ?>
Allthough "obj.url" is right url, i checked it with alert(obj.url) this function "window.location.href = obj.url;" doesnt redirect me to the URL.