Ajax filter
Опять только на Вас и уповаю javascript Гуры :)
Есть такая форма. <form action="" method="POST" id="thisform"> <label>Comments</label><br /> <textarea name="comment_content" class="comment-form" rows="6" cols="96"/></textarea><br /> <input type="submit" name="submit" value="Submit" class="log2" id="submit_ajax" /> <input type="hidden" name="process" value="newcomment" /> <input type="hidden" name="randkey" value="{$randkey}" /> <input type="hidden" name="link_id" value="{$link_id}" /> <input type="hidden" name="user_id" value="{$user_id}" /> </form> Это форма отправки комментария. Это код , как пример, показа комментариев <ol class="commentlist"> <div id="comment_body"> this text comments </div> </ol> С помощью jQuery и Ajax хочу чтобы после отправки формы , коммент появлялся сразу на странице. jQuery запрос написал такой: jQuery('#submit_ajax').click(function(event) { var this_filed = jQuery(this); var comment_content = jQuery("textarea[name='comment_content']").val(); var process = jQuery("input[name='process']").val(); var randkey = jQuery("input[name='randkey']").val(); var link_id = jQuery("input[name='link_id']").val(); var user_id = jQuery("input[name='user_id']").val(); ajax_comments (comment_content,process,randkey,link_id,user_id); return false; }); function ajax_comments (comment_content,process,randkey,link_id,user_id){ jQuery.ajax({ data: "comment_content="+comment_content+"&process=" + process+"&randkey=" + randkey+"&link_id=" + link_id+"&user_id=" + user_id, type:'POST', success: function(aws){ var response = jQuery("<ol>").html(aws); jQuery(".commentlist").empty(); jQuery('.commentlist').append(response.find('.commentlist')); }, error: function (aws){ } }); Вобщем то запрос отправляется нормально и комментарии обновляются , но только по 3 - 4 раза сразу. Т.е. Такой запрос возвращает мне всю страницу ,вместе со всеми <body><head> и т.д. поэтому все что подключенно к файлу index.php , во время запроса тоже выполняется. А вопрос такой .... есть ли возможность из полученного Ajax запроса удалить весь не нужный мне код , а оставить только то что находиться в тегах <ol class="commentlist">, т.е. говоря более менее русским языком , что бы обновлялся вообще только этот тег. Заранее спасибо . |
Также хотел спросить....может для нормальной работы этого кода надо использовать jquery.form.js ?
|
Цитата:
так а в чем проблемы? Тот ajax-запрос, который добавляет комментарий просто должен возвращать html-разметку для комментария, которые будет вставлен (и тут удобнее будет load, чем ajax, думаю) |
Цитата:
Но в моём случае он возвращет всю разметку html , т.е. разметку всей страници , включая <body><head> и т.д. . В этом то я и думаю проблема. Изменить код самого добавления комментов я не могу. По этому и задал вопрос , может как то можно,что бы из полученного Ajax запроса удалить весь не нужный мне код , а оставить только то что находиться в тегах <ol class="commentlist">, т.е. говоря более менее русским языком , что бы обновлялся вообще только этот тег. |
Цитата:
Цитата:
|
Спасибо .
Вобщем как я понимаю надо менять сам файл добавления комментов , остальное это извращение :) |
Часовой пояс GMT +3, время: 12:28. |