![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 07.08.2009
Сообщений: 4
|
![]()
Доброго времени суток!
Друзья, такая ситуация: пишу модуль комментариев для джумлы. При клике на элемент из списка, я через ajax подтягиваю комментарии из БД. всё хорошо, но при попытке добавить еще один коммент через файл php всё содержимое, отрисованное через ajax пропадает. Т.е. страница обновляется. В чем может быть проблема или подводные камни? Я в этом новичок, помогите разобраться! чем вызываю: function AjaxFormRequest(result_id,formMain, url) { jQuery.ajax({ url: url, type: "POST", dataType: "html", data: jQuery("#"+formMain).serialize(), success: function(response) { document.getElementById(result_id). innerHTML = response; }, error: function(response) { document.getElementById(result_id). innerHTML = "Возникла ошибка при отправке формы. Попробуйте еще раз"; } }); } </script> <form name="commentadd" method="" action="" enctype="multipart/form-data" id="formMain"> <h3>Добавить отзыв для <?php echo($cname['sname']); ?></h3> <input type="text" name="author" style="width: 100%;" placeholder="Автор отзыва" value="<?php echo(JFactory::getUser()->name); ?>"> <input hidden name="cid" value="<?php echo($num); ?>"> <div style="width: 100%;">Оценка: <select name="rating" style="width: 100%;"> <option value="1">Ужасно</option> <option value="2">Плохо</option> <option value="3" selected>Приемлемо</option> <option value="4">Хорошо</option> <option value="5">Отлично</option> </select><p style="margin-top: -8px;"></p> </div> <textarea name="comment" placeholder="Текст отзыва" maxlength="700" style="width: 100%; height: 60px;"></textarea> <p style="margin-top: -8px;"></p> <input type="submit" name="submit" value="Добавить отзыв" onclick="AjaxFormRequest('messegeRe sult', 'formMain', '/modules/mod_test0_progs/my0input.php')"> </form> php, который вызываю (my0input.php): <?php include("connect.php"); header("Content-type: text/html; charset=utf8"); $query="INSERT INTO `test`.`service_comcomments` VALUES ("; $query=$query.'"'.$_POST["cid"].'","'.$_POST["author"].'","'.$_POST["comment"].'","'.$_POST["rating"].'", NULL)'; mysql_query($query, $db0); mysql_close($db0); echo 'Все хорошо'; ?> |
![]() |
![]() |
![]() |
#2 |
Регистрация: 07.08.2009
Сообщений: 4
|
![]()
С этой проблемой разобрался. Во-первых, в AjaxFormRequest добавить return false, во-вторых, вызов функции перевесил на картинку img вместо кнопки.
Теперь почему-то не выводятся сообщения из my0input.php, хотя в БД данные записываются. В частности не вижу выполнения echo "все хорошо". |
![]() |
![]() |
![]() |
#3 |
Регистрация: 07.08.2009
Сообщений: 4
|
![]()
Всем спасибо! Проблему решил!
Виновник: document.getElementById(result_id). innerHTML = response; |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Пропадает блок | linkoln_7 | HTML и CSS | 4 | 04.02.2015 23:02 |
пропадает интернет! | Серёга0629 | Софт | 22 | 23.09.2011 10:56 |
Пропадает меню в ИЕ. | AndrejG | HTML и CSS | 0 | 09.07.2011 18:13 |
пропадает ЗВУК!!! | sher_man | Компьютерное железо | 7 | 12.01.2011 14:53 |