styleroom
(Styleroom)
1
всем привет
к сожалению, еще ни разу не использовал родной Yii-шный AJAX
и при первом взгляде он выглядит страшновато
поиск тьюториалов показал, что 99% из них — для аякса "под действие": ajaxLink, ajaxButton…
а мне бы выполнять запрос при загрузке страницы, то есть без дополнительных действий юзера (кликов по ссылке или отправки формы)
это какой метод надо использовать? ajax() из Chtml?
нужен хелп!
Charger
(Charger)
2
Я через registerScript / registerScriptFile подключаю JS, в котором на jQuery уже делаю нужные мне вещи, в том числе и AJAX запросы, если они нужны.
ineersa
(Ineersa)
3
Точно также как и без yii. Вставьте js в начало страницы и незаморачивайтесь. Ecли все таки надо хоть какоето yii
Yii::app()->clientScript->registerScript поможет. А так вот пример прелоада на довольно сложной форме (для апдейта):
<script>
$('body').css('display', 'none');
$(document).ready(function(){
var country="<?php echo $model->country?>";
var list="<?php echo $model->list_id?>";
var success = false;
$.ajax({
async : false,
type: 'POST',
url: "<?php echo CController::createUrl('lists/stateupdate') ?>",
data: {"country":country,"list":list},
success: function(data){
$("#Lists_state").empty();
$("#Lists_state").append(data);
$("#Lists_state").trigger("liszt:updated");
success=true;
}
});
if (success) {
success = false;
}
$.ajax({
async : false,
type: 'POST',
url: "<?php echo CController::createUrl('lists/catsupdate') ?>",
data: {"list":list},
success: function(data){
$("#Lists_category").empty();
$("#Lists_category").append(data);
$("#Lists_category").trigger("liszt:updated");
success=true;
}
});
if (success) {
success = false;
}
$.ajax({
async : false,
type: 'POST',
url: "<?php echo CController::createUrl('lists/sourceupdate') ?>",
data: {"list":list},
success: function(data){
$("#Lists_source").empty();
$("#Lists_source").append(data);
$("#Lists_source").trigger("liszt:updated");
success=true;
}
});
if (success){
$('body').css('display', 'block');
}
});
</script>
styleroom
(Styleroom)
4
спасибо за подсказки! идея понятна
p.s. короче лучше родного js-файла или скрипта в представлении = ничего нет