Joomla 1.5 Мой первый AJAX компонент (помогите найти ошибку)

Тема в разделе "Создание расширений для Joomla", создана пользователем Andrey2005, 15.02.2010.

  1. Offline

    Andrey2005 Недавно здесь

    Регистрация:
    15.02.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Мужской
    Пишу свой первый AJAX компонент, не могу найти ошибку. Не работает имеено AJAX
    controller.php
    Код (PHP):
    1. <?php
    2. defined('_JEXEC') or ('error');
    3. jimport('joomla.application.component.controller');
    4. class MvcController extends JController
    5. {
    6.     function display()
    7.     {
    8.         parent::display();
    9.     }
    10.     function mvc()
    11.     {
    12.         $name = JRequest::getVar('name_an');
    13.         $model = $this->getModel();
    14.         $myuser = $model->getUser($name);
    15.         $html = $myuser;
    16.         echo $html;
    17.    
    18.     }
    19. }
    20. ?>

    модель
    Код (PHP):
    1. <?php
    2. defined('_JEXEC') or die('error');
    3. jimport('joomla.application.component.model');
    4. class MvcModelMvc extends JModel
    5. {
    6. function __construct(){
    7.     parent::__construct();
    8.   }
    9.     function getGreeting()
    10.     {
    11.         return 'Отправить вопрос в отдел продаж';
    12.     }
    13. function getUser($name)
    14.   {
    15.     $myuser = $name;
    16.     return $myuser;
    17.   }
    18.    
    19. }
    20. ?>

    Вид
    Код (PHP):
    1. <?php
    2. defined('_JEXEC') or die ('error');
    3. jimport('joomla.application.component.view');
    4. JHTML::script('jquery-1.4.1.min.js', 'components/com_mvc/js/');
    5. $document    = &JFactory::getDocument();
    6. $baseurl = JURI::base();
    7. $document->addScript($baseurl . "components/com_mvc/js/script.js");
    8. class MvcViewMvc extends JView
    9. {
    10.     function display($tpl = null)
    11.     {
    12.         $model = $this->getModel();
    13.         $greeting = $model->getGreeting();
    14.         $this->assignRef('greeting', $greeting);
    15.         parent::display();     
    16.     }
    17.    
    18. }
    19. ?>

    скрипт AJAX
    Код (PHP):
    1. var j = jQuery.noConflict();
    2. j(document).ready(function(){
    3.     j('#submit_andrey').click(function(){
    4.     var name_an = document.getElementById("regname").value;
    5.         j.ajax({
    6.             url: "index.php",
    7.             type: "POST",
    8.             data: "option=com_mvc&task=mvc&format=row&name_an="+name_an,
    9.             dataType: "text",
    10.             timeout: 4000,
    11.             beforeSend: function(){
    12.                 j("#result").html("Loading..");
    13.                 },
    14.             success: function(answer){
    15.                     j("#result").html(answer);
    16.                 },
    17.             error: function(XMLHttpRequest, textStatus, errorThrown){
    18.                     j("#result").text(textStatus); 
    19.                 }
    20.         });
    21.     });
    22. });

    Почему-то не работает сам AJAX (не возвращает) значение переменной $name_an. Надпись Отправить вопрос в отдел продаж есть.
     
  2.  
  3. omfgpanda
    Offline

    omfgpanda специалист

    Регистрация:
    22.01.2008
    Сообщения:
    673
    Симпатии:
    53
    Пол:
    Мужской
    наверное потому что вы нигде не вызываете метод mvc ) завтра попробую это все дело реализовать, напишу более конкретно.
     
  4. Offline

    Andrey2005 Недавно здесь

    Регистрация:
    15.02.2010
    Сообщения:
    8
    Симпатии:
    1
    Пол:
    Мужской
    Спасибо за участие, нашёл ошибку :)
     

Поделиться этой страницей

Загрузка...