Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114

Самая простая ajax функция

26.09.2013, 09:45. Показов 1386. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Нужна помощь такого плана. Для знающих людей думаю будет незатруднительно...

Есть такая вот форма:

HTML5
1
2
3
4
5
<form action="/lviv/modules/confirming/validation.php" method="post">
<input type="hidden" name="confirm" value="1" />
    
<input type="submit" name="submit" />
</form>
и есть у меня в моем документе просто отдельная кнопка которая сохраняет информацию о пользователе и только если инфа сохранена вылазит эта форма выше и заставляет опять нажимать кнопку.

Я хочу подключить событие онклик на свою кнопку что бы она выполняла обработочку этой формы что я указал выше.

как я понимаю сделать это можно с помощью аякс.

ТАк как я совсем далек от него и только начал изучать нормально jquery, и еще не привык, то про аякс и его изучение пока речи и не идет.. Все что я хотел попросить это помочь написать маленькую функцию, которая будет передавать данные пост методом.. или возможно гет методом, тогда я изменю в файле validation на гет то поле конфирм с значением 1.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.09.2013, 09:45
Ответы с готовыми решениями:

Не работает простая функция
смысл таков: функция должна быть такова ; текущая ссылка, с адресом на картинку, нужно внутрь этой ссылки вставить эту же...

Почему не работает очень простая функция на JQuery
Здравствуйте. Не могу понять, как мне создать функцию в файле scripts.js, чтобы она выводилась в документе. Подскажите пожалуйста. ...

Простая ajax кнопка
Здравствуйте! Сразу говорю, у меня с яваскриптом плоховато, даже правильней сказать ужасно. Но не это самое главное. Итак суть...

12
284 / 283 / 73
Регистрация: 06.05.2013
Сообщений: 1,613
26.09.2013, 10:50
HTML5
1
onClick="myfunction()"
JavaScript
1
2
3
4
5
<script type="text/javascript">
function myfunction(){
     jQuery.get("my.php", {}, function(data) {alert (data)});
}
</script>
Вот пример, обращаемся методом гет к файлу my.php (можно поменять на пост, если надо). в {} список параметров если надо передать что нибудь, в формате parameter : parameter (первое - как его принимать в пхп будешь ($_GET["parameter"]),второе - как передаёшь).
как то так в общем.)
function(data) - это что надо сделать с данными которые вернёт php (data), в данном случае - тупо alert (всплывающее окошко с данными)
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
26.09.2013, 12:25  [ТС]
а можно конкретно под мой пример? Все таки не очень хочется менять на метод гет. Пусть лучше будет пост.Значит мой вариант будет таким?

function myfunction(){
jQuery.post("/lviv/modules/confirming/validation.php", {Что тут писать : confirm}, function(data) { ничего });
}

Исправте пожалуйста то что я прописал текстом. вот кусочек пхп файла где я так понимаю прием идет конфирма. Что тогда надо в функции прописывать?

PHP
1
2
3
4
5
6
7
8
if (Tools::getValue('confirm'))
{
    $customer = new Customer((int)$cart->id_customer);
    $total = $cart->getOrderTotal(true, Cart::BOTH);
    $confirming->validateOrder((int)$cart->id, Configuration::get('PS_OS_PREPARATION'), $total, $confirming->displayName, NULL, array(), NULL, false, $customer->secure_key);
    $order = new Order((int)$confirming->currentOrder);
    Tools::redirectLink(__PS_BASE_URI__.'order-confirmation.php?key='.$customer->secure_key.'&id_cart='.(int)($cart->id).'&id_module='.(int)$confirming->id.'&id_order='.(int)$confirming->currentOrder);
}
0
284 / 283 / 73
Регистрация: 06.05.2013
Сообщений: 1,613
26.09.2013, 13:17
PHP
1
Tools::getValue('confirm')
это у Вас приём параметра методом get?

что у Вас передаётся по клику в переменной confirm? Что там должно быть?
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
26.09.2013, 14:19  [ТС]
Ну смотрите. В пхп файле то что я скинул и вы также написали :

PHP
1
Tools::getValue('confirm')
я что то не заметил что тут гет прописано)) Но почему я твердил что пост потому что форма обрабатывается методом пост.

HTML5
1
2
3
4
5
<form action="/lviv/modules/confirming/validation.php" method="post">
 <input type="hidden" name="confirm" value="1" />
 
 <input type="submit" name="submit" />
 </form>
все что мне надо так это передать в пхп файл name=1 Взгляните на форму выше. Вот ее мне надо переделать под аякс функцию

Добавлено через 2 минуты
П.С. getValue() это реально зарезервированая функция в пхп или просто программисты той СМS которую я сейчас и переделываю так придумали название функции? Если второе то вовсе незначит что тут гет метод.. в любом случае немного выше я скинул кусочек полный где есть это все описано
0
284 / 283 / 73
Регистрация: 06.05.2013
Сообщений: 1,613
26.09.2013, 14:30
Цитата Сообщение от OgStyle Посмотреть сообщение
я что то не заметил что тут гет прописано)) Но почему я твердил что пост потому что форма обрабатывается методом пост.
Да я просто не знаю, что это, думал, вдруг в CMS какой там прописывается)
тупанул я, в общем))

в общем смотрите.

форм актион Вам не нужен.
Вы пишете input свои

PHP
1
2
3
<input type="hidden" name="confirm" value="1"/>
 
<input type="submit" name="submit" onClick="jQuery.post('/lviv/modules/confirming/validation.php', {confirm : jQuery('select[name="confirm"]')}, function(data){alert(data)})"/>
Я к сожалению проверить не могу сейчас, но попробуйте, сделайте в Вашем файле в Вашем php файле


PHP
1
2
$confirm = $_POST["confirm"];
echo $confirm;
если выведет значение, то всё норм значит, можно дальше думать
0
112 / 112 / 18
Регистрация: 24.09.2013
Сообщений: 509
26.09.2013, 14:58
Добрый день, если я правильно понял суть вопроса, нужно сделать так чтобы пользователю не пришлось нажимать кнопку 2 раза? а только 1 раз или же нет?

Добавлено через 17 минут
Цитата Сообщение от sMockingbird Посмотреть сообщение
если выведет значение, то всё норм значит, можно дальше думать
Возможно в ответе будет пустота или ошибка, т.к. не думаю что {confirm : jQuery('select[name="confirm"]')} вернет содержимое атрибута name.
Вот так может работать:
JavaScript
1
{confirm : jQuery('input[name="confirm"]').val()}
0
284 / 283 / 73
Регистрация: 06.05.2013
Сообщений: 1,613
26.09.2013, 14:58
Web_Master, опечатался я)
конечно же

JavaScript
1
{confirm : jQuery('input[name="confirm"]').val();}
0
112 / 112 / 18
Регистрация: 24.09.2013
Сообщений: 509
26.09.2013, 15:04
А по хорошему лучше вместо onClick="" создать js файл, где проще и понятнее расписать весь запрос на более человеческом уровне. Как раз функция $.ajax или $.post подойдет
0
284 / 283 / 73
Регистрация: 06.05.2013
Сообщений: 1,613
26.09.2013, 15:06
Web_Master, я думаю лучше просто в head вынести, так проще будет.
Отдельный файл создавать для такой маленькой функции наверное не стоит.
Разве что производительность или ещё что то меняется, тут я не в курсе)
0
112 / 112 / 18
Регистрация: 24.09.2013
Сообщений: 509
26.09.2013, 15:21
А ну да можно и в хеад запихнуть.

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<script>Подключаем jquery<script>
<script>
$(document).ready(function() {
 
$('input[type=submit][name=submit]').click(function(){
 
var confirm = $('input[name=confirm]').attr('val');
 
$.post('lviv/modules/confirming/validation.php', {confirm : confirm}, function(data) {
    alert(data);
});
 
});
 
 
 
});
</script>
В самом validation.php как сказал sMockingbird пиши это:
PHP
1
2
$confirm = $_POST["confirm"];
echo $confirm;
Добавлено через 1 минуту
если после пост запроса js alert вернёт 1 то всё работает

Добавлено через 2 минуты
форму используйте ту которую написали в самом начале

Добавлено через 56 секунд
HTML5
1
<form action="/lviv/modules/confirming/validation.php" method="post">
и
HTML5
1
</form>
можно удалить совсем
0
11 / 5 / 0
Регистрация: 18.11.2012
Сообщений: 114
26.09.2013, 15:34  [ТС]
вы знаете пришла мне в голову гиниальная мысль))

JavaScript
1
window.location.href='/lviv/modules/confirming/validation.php?confirm=1'
и все мои вопросы решены) Спасибо за ваши рекомендации.
0
112 / 112 / 18
Регистрация: 24.09.2013
Сообщений: 509
26.09.2013, 15:37
Не за что, обращайтесь)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.09.2013, 15:37
Помогаю со студенческими работами здесь

Простая функция перехода
Здравствуйте! Скажу сразу, в JavaScript не разбираюсь вообще. По этому, пришёл за помощью именно сюда. Дело в том, что у меня есть...

Не работает простая функция
Ребят, помогите плз, уже голову сломал. function openCloseNavi() { var obj = document.getElementById('menu_docs'); var a = true; ...

Самая простая тема.
Всем привет! Скачал pgAdmin с оф.сайта (38мб) Запустил. Добавил сервер: хост localhost порт 5432 подсоединиться к серверу...

Самая простая доработка 1С
Здравствуйте, может кто сможет выручить. Нужно сдавать курсовой по 1С. Тема доработка 1С, т.е. необходимо сделать простую конфигурацию, Что...

Самая простая программа на Паскале
Здравствуйте, уважаемые форумчани. Помогите, пожалуйста, написать простую программу на Паскаль (именно этого языка программирования не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru