помогите создать запрос на JQUERY: 1. POST передача 2. Прогресс бар чтобы получало под ид (id="bar") 3. чтобы передавало данные в файл jres.php 4. Передавало id=4 (4 это любая цифра) 5. И как оно результат будет выводить? Мне надо чтобы например просто писало echo"Город выбран"; и всё... спасибо всем кто поможет... я заодно и научусь делать пост запросы через эту библиотеку)
Не совсем понял что ты хочешь сделать с прогрес бар, покажу тебе основную суть, со списками. Дальше самому не сложно разобраться. PHP: <script src='js/jquery.js' type='text/javascript'></script> <script type="text/javascript"> $(document).ready(function(){ showCitiesById($('#cityId').val()); }); function showCitiesById (val) { $.ajax({ type: "POST", url: "jres.php", data: "cityId="+val, success: function(html){ $("#cityContainer").html(html); } }); } </script> <select name="cityId" id="cityId" onchange="showCitiesById(this.value)"> <option value="Moscow">Moscow</option> <option value="Vegas">Vegas</option> </select> <!--Здесь выводим --> <div id="cityContainer"> </div> файл jres.php PHP: <?php //Здесь обрабатываешь полученные данные, заносишь в бд и т. д. $cityId = $_POST['cityId']; echo "Сейчас выбран город: " . $cityId; ?>
Берешь картинку отсюда http://ajaxload.info/. Далее задаем событие при клике по кнопке, на сколько я понял у тебя будут передаваться данные из формы. Потом добавляем в контейнер, картинку с того сайта и передаем данные. Делаем эффект fadeout убераем картинку. PHP: <html> <head> <title></title> <script src='js/jquery.js' type='text/javascript'> <script type="text/javascript"> $(function() { $('#submit').click(function() { $('#container').append('<img src="loading.gif" alt="Идет загрузка" id="loading" />'); var name = $('#name').val(); $.ajax({ url: 'jres.php', type: 'POST', data: 'name=' + name, success: function() { $('#loading').fadeOut(500, function() { $(this).remove(); }); } }); return false; }); }); </script> </head> <body> <div id="container"> <input type="text" name="name" id="name"/> <input type="submit" name="submit" id="submit" value="Go" /> </div> </body> </html>
PHP: <script src='js/jquery.js' type='text/javascript'></script> <script type="text/javascript"> $(document).ready(function(){ showCitiesById($('#cityId').val()); }); function showCitiesById (val) { $('#container').append('<img src="loading.gif" alt="Loading..." id="loading" />'); $.ajax({ type: "POST", url: "jres.php", data: "cityId="+val, success: function(html){ $("#cityContainer").html(html); $('#loading').fadeOut(500, function() { $(this).remove(); }); } }); } </script> <div id="container"> <select name="cityId" id="cityId" onchange="showCitiesById(this.value)"> <option value="Moscow">Moscow</option> <option value="Vegas">Vegas</option> </select> </div> <!--Здесь выводим --> <div id="cityContainer"> </div>
Пацаны, проблема такая: на странице есть кнопка Открыть. При нажатии на нее появляется (с помощью jquery) блок, а сама кнопка прячется (slideUp). Если я в этом состоянии обновлю страницу, то, естественно, все вернется, т.е. кнопка будет, блока нет. Надо сделать так, чтобы при нажатии на батон в куку записывалось состояние блока (видим\невидим) и также кнопки (видима\невидима). Т.е. при обновлении страницы это состояние считывается из куки и все ок отображается. + в блоке, который открывается, есть кнопка Закрыть, при нажатии на которую этот блок закрывается и появляется наша кнопка Открыть, и кука удаляется. Никак мне это не организовать
2 Feras Немного коряво написал, времени мало было. Для работы тебе еще понадобится jquery.cookie.js . PHP: <html> <head> <script src="./js/jquery.js"></script> <script src="./js/jquery.cookie.js"></script> <script> $(function(){ //Если нажата кнопка open и есть кука if ($.cookie('submitOpen-' + 1)) { $('#close').show("slow"); $('#open').css("display","none"); } $('#open').click(function() { cookieSet(1); $('#open').slideUp(); $('#close').show("slow"); }); $('#close').click(function() { cookieDel(1); $('#close').slideUp(); $('#open').show("slow"); }); }); function cookieSet(index) { $.cookie('submitOpen-' + index, 'open', {expires: null, path: '/'}); } function cookieDel(index) { $.cookie('submitOpen-' + index, null, {expires: null, path: '/'}); } </script> </head> <body> <div> <input type="submit" name="open" id="open" value="open" /> </div> <div> <input type="submit" name="close" id="close" value="close" style="display:none"/> </div> </body> </html>
Други, помощь треба Чтобы долго не расписывать, есть типо сайт анекдотов, с форумом и etc, есть система голосования за каждый анек, вопрос: Система рабочая, но не красивая - т.е. при выставлении оценки анекдоту происходит открытие lala.php, в котором через GET цепляются ID анекдота и его оценка, потом обычные sql-запросы, после чего скрипт автоматически самозакрывается, но всё равно экран дергается и всё такое, как привязать сюда Jquery? Т.е. чтобы проголосовал и ничего не открывалось и не всплывало, а просто молча происходила обработка оценки и менялся рейтинг анекдота С jquery дело имел только один раз, в форме авторизации, проверка логина на существоание в БД также без перезагрузки, умом как бы понимаю, что да как, но реализовать не могу - тут формы нет. Чтобы было понятно, о чем речь, вот сайт, где это надо сделать: Code: http://old-ostrie.ru/kucha-0.html Буду признателен за любые наводки в тему ЗЫЖ В гугле "jquery система рейтинга" набирал, пост в этой теме про баш читал, но всё равно мало информации id и выставленный балл чётко могу зацепить, но на php
Code: fucntion set_rate(id, rate) { $.ajax( { type:"POST", url:"set_rate.php", data:"id=" + id + "&rate=" + number, success:function(response) { $("#rate_show").val(response); //элементу с id="rate_show" присваиваем новый рейтинг } } ); } set_rate.php PHP: <?php if (isse($_POST['id']) && isse($_POST['rate'])) { $query = 'UPDATE table SET rate=(rate + ' . $_POST['rate'] . ')/0.9) WHERE id="' . $_POST['id'] . '"'; mysql_query($query); $query = 'SELECT * FROM table WHERE id="' . $_POST['id'] . '"'; $result = mysql_query($query); $fetch = mysql_fetch_array($result); echo($result); } ?> где-то так
Если посмотреть на "Зацени анекдот: [1] [2] [3] [4] [5]" и подвести мышь к [1] например, то будет такая ссылка высвечена (в опере по крайней мере: http://old-ostrie.ru/ocenka-5623-1.html где 5623 - это ID анека а 1 - это выставляемая оценка треба пример с AJAX чтобы происходила передача ID и выставленной оценки в файл ocenka.php, он бы делал то, что и сейчас делает - т.е. просто апгрейтит базу, прибавляет баллы за анекдом по его ID, но без загрузки самого ocenka.php + без перезагрузки страницы чтобы менялся (сразу) рейтинг анекдота
index.html Code: <head> <script type="text/javascript" src="jquery.js"></script> </head> <script language="javascript"> function set_rate(id, rate) { $.ajax( { type:"POST", url:"rate.php", data:"id=" + id + "&rate=" + rate, success:function(response) { $("#rate_show").html(response); //диву с id="rate_show" меняем контент на обновлённое количество голосов $("#vote").html("Проголосованно"); //диву с id="vote" меняем контент (линки голосования) на "Проголосованно" } } ); } </script> Рейтинг : <div id="rate_show" style="display:inline">[10]</div> <br> Великий русский полководец Суворов, одержав победу в сражении при Рымниках, во время Русско-Турецкой войны 1787-1792 г. , получил наименование Суворов-Рымникский. Григорий Потёмкин, добравшись до Крыма, получил от Екатерины титул князя и наименование Потёмкин-Таврический. А вот дошёл бы Маршал Жуков до Колорадо... <br> <div id="vote"> Зацени анекдот :<br> <a href="javascript:set_rate(5623, 1);">[1]</a> <a href="javascript:set_rate(5623, 2);">[2]</a> <a href="javascript:set_rate(5623, 3);">[3]</a> <a href="javascript:set_rate(5623, 4);">[4]</a> <a href="javascript:set_rate(5623, 5);">[5]</a> </div> rate.php PHP: <?php echo ($_POST['id'] . ' - ' . $_POST['rate']); //любые операции с полученным контентом ?> 1) добавить див в количество голосов анека (или другой эелмент) 2) добавить див для голосования под текстом 3) добавить адресс ссылок на JS ну и как-нить передевать id + rate
Непонятно, ничего не происходит, в rate.php даже прописал открытие файла - ничего не создается, как будто по нажатию кнопки обращение к rate.php вообще не производится.
Вопрос, структура HTML вот такая: Code: <table class="contentpaneopen"> <tbody><tr> <td class="contentheading" width="100%"><span>НАЗВАНИЕ 2<span></a></td> </tr></tbody> </table> <div class="desc"> ОПИСАНИЕ 2 </div> <table class="contentpaneopen"> <tbody><tr> <td class="contentheading" width="100%"><span>НАЗВАНИЕ 1<span></td> </tr></tbody> </table> <div class="desc"> ОПИСАНИЕ 1 </div> Задумка, что бы при нажатии на Название # (span), открывалось содержимое <div class="desc">, но только того, над которым было нажато название. По умолчанию описание все скрыто $(.desc).hide(); По необходимости можно изменить структуру HTML.