AJAX отправка формы

#
AJAX отправка формы
Здравствуйте!

Ребята подскажите каким образом отправить данные формы ввода нового комментария через ajax с учетом HostCms 6?
Нужны ли при этом ajax.js и  JsHttpRequest.js  в  первом из них например есть функция АjaxSendForm(callback_function, AAdditionalParams, ButtonObject)



Сделал простую проверку работы Ajax для понимания работы

в main.js прописал свои функции


(function(jQuery){
   // Функции без создания коллекции
   jQuery.extend({

      addAjaxComment: function(path,item_id){
         $.clientRequest({path: path + '?add_ajax_comment=' + item_id, 'callBack': $.addAjaxCommentCallback, context: $('#comment_message')});
         return false;
      },
      addAjaxCommentCallback: function(data, status, jqXHR)
      {
         $.loadingScreen('hide');
         jQuery(this).html(data);
      }

   });
})(jQuery);


В  коде настоек типовой ИС написал код, где читаю и возврашаю для примера переданный id элемента ИС, для которой предполагается ajax добавление комментария.


if (Core_Array::getGet('add_ajax_comment'))
{
   $item_id = intval(Core_Array::getGet('add_ajax_comment'));


   // Ajax
   if (Core_Array::getRequest('_', FALSE))
   {
      ob_start();
      echo "id element=";
      echo $item_id;
      echo json_encode(ob_get_clean());
      exit();
   }
}



Все это в XLST элемента ИС вызываю с помощью  

<a href="#" onclick="return $.addAjaxComment('{/informationsystem/informationsystem_item/url}', {@id})">TEST AJAX ADD COMMENT  </a>


А вот как передать форму с данными о новом комментарии через ajax не понимаю

Код формы добавления комментаия в XSLT элемента ИС:

<div id="comment_message"></div>


<form class="form" action="{/informationsystem/informationsystem_item/url}" name="comment_form_0{$id}" method="post">
   
         <!-- Поле ИМЯ -->
          <fieldset class="name-container">
            <xsl:if test="/informationsystem/siteuser_id = 0">
               <label><span class="text-red">*</span> Имя:</label>
               <input placeholder="Имя" id="comment-name" name="author" type="text" value="{$name}"/>
              </xsl:if>
        </fieldset>

      <!-- Поле EMAIL-->
        <fieldset class="email-container">
              <xsl:if test="/informationsystem/siteuser_id = 0">
                    <label><span class="text-red">*</span> Email:</label>
                  <input  type="email" id="email{$id}" placeholder="Email" name="email" value="{$email}" />
               </xsl:if>
        </fieldset>
      
      <div id="error_email{$id}"></div>

      <fieldset class="message">
            <label><span class="text-red">*</span> Комментарий:</label>
            <textarea  id="comment-message" name="text"  rows="8" placeholder="Текст комментария"><xsl:value-of select="$text"/></textarea>
        </fieldset>


    <!--    Обработка CAPTCHA -->
      <xsl:if test="//captcha_id != 0 and /informationsystem/siteuser_id = 0">

         
            
            <!-- <form class="well form-inline"> -->
      <fieldset class="captcha-container">
             <label><span class="text-red">*</span> Контрольное число:</label>
             <input type="hidden" class="input-small" name="captcha_id" value="{//captcha_id}{$id}"/>
             <input id="comment-captcha" name="captcha" type="text"/>&#xA0;&#xA0;</fieldset>
   <fieldset class="captcha-container">
      <label><span class="text-red">&#xA0;</span>&#xA0;</label>
            <img id="comment_{$id}" class="captcha" src="/captcha.php?id={//captcha_id}{$id}&amp;height=34&amp;width=100" title="Контрольное число" name="captcha"/>&#xA0;&#xA0;<span onclick="jQuery('#comment_{$id}').updateCaptcha('{//captcha_id}{$id}', 34); return false"><i class="icon-retweet"></i></span>
         </fieldset>
         <!--    </form> -->

      </xsl:if>


      <xsl:if test="$id != 0">
               <input type="hidden" name="parent_id" value="{$id}"/>
      </xsl:if>

<input id="comment-reply" type="submit" name="add_comment" value="Отправить" />


  </form>
Модератор
#
Re: AJAX отправка формы
jmaretti,
забудьте JsHttpRequest, используйте http://malsup.com/jquery/form/
Авторизация