0 Пользователей и 1 Гость просматривают эту тему.
  • 0 Ответов
  • 3783 Просмотров
*

OEvg85

  • Новичок
  • 4
  • 0 / 0
Доброго времени суток, уважаемые форумчане  ;D.
Пытаюсь создать полноценный AJAX-шаблон для Joomla 2.5. Суть моей задумки, заключается в динамической подгрузке контента (компонента).  К тому же уже удалось реализовать подгрузку последней новости в специально отведенный под это дело блок. Все бы ничего: контент грузится динамически, поиск работает, авторизация тоже работает, но остается один досадный момент.  Редакторы моего сайта пристрастились редактировать материалы не заходя в админку. То бишь авторизовался через форму логина на сайте и тут же материалы редактирует. А после "перевода" на AJAX редактирование корректно не осуществляется. То бишь нажимаем на кнопку редактировать, правим текст, нажимаем кнопку сохранить или отменить, ничего не происходит.

Привожу код своего шаблона (естесно, то что к делу не относится тут приводить не буду):
Код: html4strict
<?php defined( '_JEXEC' ) or die( 'Restricted access' );?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
<head>
<jdoc:include type="head" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo $this->baseurl; ?>/templates/<?php echo $this->template; ?>/history-api/history.js"></script>

<script type="text/javascript">
function ajaxLoad(myHref){
var tmplAppend = '?tmpl=ajax';
if (myHref.indexOf('?') + 1){
tmplAppend = '&tmpl=ajax';
};

$.ajax({
url: myHref+tmplAppend,
cache: false,
dataType: 'html',
success: function(data) {
$('#content').html(data);
document.title = $('#ajaxtitle').text();
}
});
};

$(document).ready(function(){

$(window).on('popstate', function(e) {
var returnLocation = history.location || document.location;
ajaxLoad(returnLocation.href);
});

$.ajax({
url: 'http://art-nt.comuv.com/index.php/home?tmpl=ajax',
cache: false,
dataType: 'html',
success: function(data) {
$('#news').html($(data).find('.leading-0'));
$('#news p').removeAttr('style');
$('#news a.highslide').remove();
setGeometry();
}
});

$(document).ajaxComplete(function(){
$('a').not(function(index){
                                        if(!!$(this).attr('class')){
return $(this);
}else if($(this).attr('href') == '#'){
return $(this);
}else{
return false;
};
          }).addClass('ajax');

         $('a').filter(function(){
        if ($(this).hasClass('pagenav')){
        return $(this);
          };
          }).addClass('ajax');
          });

$(document).on('click', 'a.ajax', function(e){
e.preventDefault();
history.pushState(null, null, this.href);
ajaxLoad(this.href);
return false;
});
});
</script>
</head>
<body>
<div id="news_wrapper">
<div id="news"></div>
</div>

<div id="content_wrapper">
<div id="content">
<jdoc:include type="message" />
<jdoc:include type="component" />
</div>
</div>
</body>
</html>


Кроме того есть файл "ajax.php" вот такого содержания:
Код: php
<?php
defined('_JEXEC') or die; ?>
<div id="ajaxtitle"><?php echo $this->title; ?></div>
<jdoc:include type="component" />

Вроде все правильно, почему не работают кнопки "сохранить" и "отмена" не могу понять

ЗЫ. Заранее спасибо
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Суффикс класса модуля

Автор dima_

Ответов: 5
Просмотров: 2938
Последний ответ 27.11.2012, 20:53:36
от dima_