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

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

26.09.2013, 09:45. Показов 1364. Ответов 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
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru