Володя

Володя

С нами с 18 декабря 2012; Место в рейтинге пользователей: #4
Володя
15 марта 2014, 20:05
0
И наверно вряд ли задружат вдвоем...Pdopage необходимо знать сколько элементов всего в выборке, затем бьет по страницам. А JSONDerulo вряд ли получает количество постов или чего там… соответственно пагинации нет
Володя
14 марта 2014, 11:14
+1
Кратко описал тут — bezumkin.ru/sections/tips_and_tricks/2843/
Володя
14 марта 2014, 09:21
1
+1
пошел дальше и немного переписал код, теперь можно несколько независимых пагинаций на странице вызывать
<h2>первый вызов</h2> 
 
[[!AjaxSnippet?
&snippet=`pdoPage`
&element=`msProducts`
&tpl=`tpl.msProducts.row`
&limit=`3`
&depth=`1`
&parents=`4`
&showLog=`0`
&page=`[[!geturi]]` 
&as_mode=`onload`   
&wrapper=`
<div class="pagin [[+key]]"></div>

<div id="[[+key]]" class="ajax-snippet">
			<img src=" " class="as_spinner" style="width:32px;margin:auto;display:block;">
</div>

<div class="pagin [[+key]]"></div>
`
]] 

<h2>второй вызов</h2>
[[!AjaxSnippet?
&snippet=`pdoPage`
&element=`msProducts`
&tpl=`tpl.msProducts.row`
&limit=`3`
&depth=`1`
&parents=`4`
&showLog=`0`
&sortdir=`DESC`
&page=`[[!geturi]]` 
&pageVarKey=`page2`
&as_mode=`onload`   
&wrapper=`
<div class="pagin [[+key]]"></div>

<div id="[[+key]]" class="ajax-snippet">
			<img src=" " class="as_spinner" style="width:32px;margin:auto;display:block;">
</div>

<div class="pagin [[+key]]"></div>
`
]] 

<script>
    
    $(document).on('as_complete', document, function(e,d) {
 
    $(".pagin."+d["key"]).append(d["pagination"]);
 
	$(document).on('click', '.pagination a', function(e) {
	e.preventDefault();
    var url = $(this).attr('href');
    //console.log(url);

    $.post(url, {as_action: d["key"]}, function(response) {
	    if (typeof response.output !== "undefined") {
		    $('.ajax-snippet#'+d["key"]).html(response.output);
		
		    $(".pagin."+d["key"]).html(response.pagination); 

	      }
    }, "json");                  
                    
 
    }); 
});
    
</script>
смотреть тут — s5322.test.modx.pro/ayaks-snippet-neskolko-vyizovov.html
Володя
14 марта 2014, 08:47
0
Делюсь)
код на странице
<div class="pagin"></div>

[[!AjaxSnippet?
&snippet=`pdoPage`
&element=`msProducts`
&tpl=`tpl.msProducts.row`
&limit=`3`
&depth=`1`
&parents=`4`
&showLog=`0`
&page=`[[!geturi]]` 
&as_mode=`onload`   
]] 

<script>
    $(document).on('as_complete', document, function(e,d) {
    $(".pagin").append(d["pagination"]);
	//console.log(d["pagination"]);

	$(document).on('click', '.pagination a', function(e) {
	e.preventDefault();
    var url = $(this).attr('href');
    //console.log(url);

    $.post(url, {as_action: d["key"]}, function(response) {
	    if (typeof response.output !== "undefined") {
		    $('.ajax-snippet').html(response.output);
		
		    $(".pagin").html(response.pagination); 

	      }
    }, "json");                  
                    
 
    }); 
});
    
</script>


<div class="pagin"></div>
[[!geturi]]
<?php
$filter = $_GET['page'];
return $filter;
смотреть что получилось тут — s5322.test.modx.pro/test.html
Володя
14 марта 2014, 08:44
0
Да это я уже тут начудил ночью… щас все проверил, нормально работает
Володя
13 марта 2014, 23:55
0
сделал с грехом пополам… но почему то возвращаемый контент двоится…
Володя
13 марта 2014, 21:47
0
Хотя знаешь задумался, и чет никак не соображу как тут подступиться с аякс пагинацией,
Ну вывести пагинацию это все понятно, перехватить клик по пагинации — тоже понятно.
А вот как организовать запрос к сниппету на этой же странице с выводом содержимого в этот же блок?
Я продумал до отправки post запроса и понял что я не знаю как мне подгрузить страницу и чтоб еще сработало событие as_complete и взять ответ в json…
Если шариш — хотя бы теоретически подскажи порядок действий,
Спасибо!
Володя
13 марта 2014, 18:00
0
Ну обертка да. Помоему тут Василий как раз и говорит о том что можно сделать аякс пагинацию…
$(document).on('as_complete', document, function(e,d) {
	console.log(d);
});
данные же у нас все приходят…
Володя
12 марта 2014, 18:14
0
ну да после одного раза все нормуль, я это прекрасно знаю… просто думал у меня одного так…
Володя
12 марта 2014, 18:01
0
Для Василия.)
Пишу сюда, ранее где то тебе писал, но уже не могу найти…
У тебя такой же глюк присутствует на сайте после очистки кеша, который ты сейчас сделал, а я удачно словил момент…
joxi.ru/JWggUxjKTJDXKb9HImU
Володя
12 марта 2014, 13:50
0
таки да… А создать ресурс и нажать кнопку сохранить… а потом заниматься размещением контента.
Володя
09 марта 2014, 17:53
0
Говорю ж интеллигентному… А ты всячески вульгарные слова употребляешь:
— хрень
— недомагазин
и вот это —
может быть

Конечно он второй день тут, Руслана, я имею ввиду… и просто застеснялся что то уточнять…
Володя
09 марта 2014, 17:37
0
ну то есть это
Added where condition: 0=,
— нормально?
Володя
09 марта 2014, 17:23
0
Да, правильно устроили тут «балаган»… Интеллигентному человеку даже неудобно тут ответить…
Володя
09 марта 2014, 17:20
0
а в логе что?
Володя
09 марта 2014, 17:01
0
и сниппет ваш я думаю вам немного изменить нужно, пускай сразу подставляет в where конструкцию вида —
(`TVname`.`value` LIKE '%string%') ... AND ( )....AND ( )...
Володя
09 марта 2014, 16:44
0
еще бы он так вам что то вывел
&where=`(`TVтег`.`value` LIKE '%фигня%') AND (`TVгод`.`value` LIKE '%2066%')`
Володя
09 марта 2014, 15:49
+1
из имени тв уберите русские буквы и все будет ок.

а не еще можно вот так попробовать прописать —
&where=`{"`TVЖанр`.`value`:LIKE":"%фигня%"}`
Володя
09 марта 2014, 01:55
0
возможно… но если задуматься странно…
извиняюсь что влез тут со своим мнением..)
да ну пустое… извинения ни к чему)