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

Умная кнопка

13.02.2023, 09:04. Показов 1594. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Скажите, как написать код задачи, чтоб при введении слова в текстовом поле и проверке введённого слова на верность, появлялась кнопка с ссылкой на ресурс?

Получилось сделать проверку текста на истину и выведение ответа: истина/ложь.

Осталось решить как сделать, после ввода верного ответа, появляющуюся кнопку с ссылкой на ресурс...

Код:

PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<!DOCTYPE html> 
<html> 
    <head> 
        <meta charset="utf-8"> 
        <title>Ввод ответа</title> 
    </head> 
    <body> 
    <form>
        <p id="error" style="display: none; color: red"></p>
        <p>Введите ответ:</p> 
        <p><input name="ip" pattern="^[Л-лукошко]"></p> 
        <p><input type="submit" value="Проверить"></p> 
    </form>
    <script src="https://snipp.ru/cdn/jquery/2.1.1/jquery.min.js"></script> 
    <script> 
        (function($) {
            var error = {
                show: function(msg) {
                    $('#error').text(msg).css('color', 'red').show();
                },
                success: function(msg) {
                    $('#error').text(msg).css('color', 'green').show();
                },
                hide: function() {
                    $('#error').hide();
                }
            }
 
            $('form [type="submit"]').off().on('click', function() {
                error.hide();
                event.preventDefault();
                if($('[name="ip"]').val() == "Счастье") {
                    error.success('Верно!');
                } else {
                    error.show('Видимо здесь что-то иное...');
                }
            });
        })(jQuery);
    </script>
    </body> 
</html>
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2023, 09:04
Ответы с готовыми решениями:

Умная таблица
Подскажите, делаю автоматизацию для заполнения таблиц ecxel, но вот в чем вопрос, можно ли сделать так, чтобы при выборе определенного...

Умная классификация
Доброго времени суток! Подскажите пожалуйста: Есть список что, кому и сколько нужно (экспорт из другой программы), который очень...

Умная Функция
Есть функция которая в зависимости от входных параметров, делает сложные вычисления, а потом выдаёт результат. Как можно реализовать,...

37
Эксперт JSЭксперт HTML/CSS
 Аватар для krvsa
3838 / 1685 / 431
Регистрация: 14.03.2022
Сообщений: 4,279
15.02.2023, 18:01
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от xkkx Посмотреть сообщение
Иначе зачем вообще использовать <form> ?
Меня в своего перековывать не нужно... Я только на форму и вешаю обработчик.

А тему эту еще раз развил благодаря тебе.
Тогда у меня аргументов не хватило... Теперь их список увеличился.
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
15.02.2023, 18:20
Цитата Сообщение от krvsa Посмотреть сообщение
Я только на форму и вешаю обработчик.
А я уже перестал что либо вешать, ибо устал писать обработчики ajax и fetch. В соседней теме по PHP нашёл отличный скрипт, который довёл до ума, и теперь могу делать аля так

HTML5
1
2
3
4
5
<form id="login" data-api-method="login">
    <input type="text" value="" name="login"/>
    <input type="password" value="" name="password"/>
    <input type="submit"/>
</form>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
MethodAPI('login').on('onPreCall', (event, ArgsCall) => { // Перед вызовом
    // Добавляем параметры для вызова 
    ArgsCall.append('params[]', 1);
    ArgsCall.append('params[]', 2);
 
    // return false; // Завершим вызов к API
}).on('onResult', (event, params) => { // onSuccess / onError
    // console.log(params);
    // let isError = params['error'] ? 'Ошибка: ' : 'Успех: ';
    // alert(isError  + params['message']);
}).on('onError', (event, params) => { // Если скрипт вернул ошибку в ответе error 
     console.log(params);
     alert('Ошибка: ' + params['message']);
}).on('onSuccess', (event, params) => { // Если скрипт НЕ вернул ошибку в ответе error 
     console.log(params);
     alert('Успех: ' + params['message']);
}).on('onCatch', (event, errorMessage, ArgsCall) => { // К примеру отвалился интернет 
     console.log(errorMessage);
});

Ну и сам PHP
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
require_once "api.php";
 
if(!defined('method_call')) {
    return;
}
 
switch(method_call) {
    case 'login':
        $login = trim(filter_input_post_or_get('login'));
        $password = trim(filter_input_post_or_get('password'));
 
        if($login == 'admin' && $password == 'admin') {
            returnOutSession('Всё совпало!');
        } else {
            returnOutError( 'Логин или пароль - неверный.' );
        }
    break;
    default:
        returnOutError('Метод не определён');
}


Позволяет плодить формы в огромных количествах, писать разный вид функционала за считанные секунды, без головной боли

Работает по умолчанию как POST запрос, хавает все INPUT включая type="file" multiple. Работают все проверки

Последнюю версию выкладывать тут
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 07:12  [ТС]
Можно объяснить что значит многоточие за слэшем? Что в этом месте прописать?

Цитата Сообщение от xkkx Посмотреть сообщение
Неверно вешать на кнопку

JavaScript
1
2
3
4
5
6
$('form').submit(function(e) {
   e.preventDefault();
// ...
  let Input_ip = $(this).find('[name="ip"]');
// ...
});
Можно показать как это полным текстом кода будет выглядеть?
Что-то мне трудно понять что куда прописать...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 11:52
Лучший ответ Сообщение было отмечено Dobrolubov как решение

Решение

Цитата Сообщение от Dobrolubov Посмотреть сообщение
Что в этом месте прописать?
Да

Цитата Сообщение от Dobrolubov Посмотреть сообщение
Можно показать как это полным текстом кода будет выглядеть?
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<!DOCTYPE html> 
<html> 
    <head> 
        <meta charset="utf-8"> 
        <title>Ввод ответа</title> 
    </head> 
    <body> 
  <form>
    <p id="error" style="display: none; color: red"></p>
    <p>Введите ответ:</p> 
    <p>  <input type="text" required name="ip"/>
    </p> 
    <p><input type="submit" value="Проверить"/></p> 
  </form>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.3/jquery.min.js"></script> 
    <script> 
        (function($) {
            var error = {
                show: function(msg) {
                    $('#error').text(msg).css('color', 'red').show();
                },
                success: function(msg) {
                    $('#error').text(msg).css('color', 'green').show();
                },
                hide: function() {
                    $('#error').hide();
                }
            }
            
            
            const words = {
              'счастье':true,
              'свобода':true
            };
 
           $('form').submit(function(e) {
                error.hide();
                e.preventDefault();
         
                let Input_ip = $(this).find('[name="ip"]').val().trim().toLowerCase();
                let button_submit = $(e.originalEvent.submitter);
             
                if(words[Input_ip] !== undefined && words[Input_ip]) {
                    error.success('Верно!');
                    
                    if(button_submit.data('linkOpen')) {
                        location = button_submit.data('linkOpen');
                    } else {
                        button_submit.val('Перейти');
                        button_submit.data('linkOpen', 'https://linkOpen.linkOpen');
                    }
                } else {
                    error.show('Видимо здесь что-то иное...');
                    
                    button_submit.val('Проверить');
                    button_submit.data('linkOpen', false);
                }
            }); 
        })(jQuery);
    </script>
    </body> 
</html>
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 17:56  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Да
Благодарю!) Единственный момент... Решение данной задачи возникло по причине переноса сайта с wix на наш uCoz. И вот интересно, что данное решение хорошо функционирует на wix и отказывается выполнять свою функцию на uCoz, просто пишет "Недопустимое содержимое" и даже не сохраняет код...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 18:04
Цитата Сообщение от Dobrolubov Посмотреть сообщение
и даже не сохраняет код...
Используйте любой другой FTP доступ. filezilla\vs code
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 18:09  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Используйте любой другой FTP доступ. filezilla\vs code
Мне трудно даётся понимание вашего терминологического аппарата... Можно подробнее? Что значит FTP доступ filezilla\vs code? Как это воплотить действиями?
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 18:25
Цитата Сообщение от Dobrolubov Посмотреть сообщение
Мне трудно даётся понимание вашего терминологического аппарата... Можно подробнее? Что значит FTP доступ filezilla\vs code? Как это воплотить действиями?

А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
0
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
16.02.2023, 19:38  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
Вот это уже интересно! А как это можно сделать?)))
0
16.02.2023, 21:33

Не по теме:

Не факт что Юкоз позволит поменять файлы, используя сторонний менеджер.

0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 21:48
Цитата Сообщение от Dobrolubov Посмотреть сообщение
А как это можно сделать?)))
Так стандартный FTP доступ всегда должен быть. Иначе бегите от туда, и не думайте !!!
1
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
16.02.2023, 21:51
Ой. Советую уже бежать! Они берут деньги за передачу файлов по ФТП)))

https://www.ucoz.ru/help/tools/ftp-podklyuchenie

Есть куда лучше хостинги, аля timeweb. Плачу 1200 рублей по тарифу Leo VHVDS и в ус не дую. Никаких ограничений и доплат за воздух
Миниатюры
Умная кнопка  
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
17.02.2023, 07:35  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
А код то тут причём? Собственно. Если тебе файловый менеджер uCoz голову сверлит. Используй сторонний, через который зальёшь все файлы.
Дело в том что, исходник, который я опубликовал в первом сообщении на uCoz проходит и функционирует нормально. А когда код правится, то выдаёт ошибку. Можно его как-то поправить так, что б продолжал функционировать на uCoze?

Добавлено через 1 час 16 минут
Цитата Сообщение от xkkx Посмотреть сообщение
Ой. Советую уже бежать! Они берут деньги за передачу файлов по ФТП)))

https://www.ucoz.ru/help/tools/ftp-podklyuchenie

Есть куда лучше хостинги, аля timeweb. Плачу 1200 рублей по тарифу Leo VHVDS и в ус не дую. Никаких ограничений и доплат за воздух
С деньгами много вариантов решения вопросов) В том-то и дело...
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
17.02.2023, 13:51
Цитата Сообщение от Dobrolubov Посмотреть сообщение
С деньгами много вариантов решения вопросов) В том-то и дело...
1200 это копейки, когда хотя бы 3 сайта окупаются на 50 + тысяч пассивного
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
17.02.2023, 14:45  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
1200 это копейки, когда хотя бы 3 сайта окупаются на 50 + тысяч пассивного
Согласен!) Для этого их стоит сделать сначала) Вот я обратился здесь для решения функционала кнопки) Может получится решить такую задачку, чтоб можно было спокойно на uCoz залить?
0
132 / 76 / 16
Регистрация: 08.07.2022
Сообщений: 309
17.02.2023, 18:43
Цитата Сообщение от Dobrolubov Посмотреть сообщение
на uCoz
Передача PHP-файлов на сайт невозможна. Передача PHP-файлов (если услуга PHP входит в пакет) осуществляется на отдельный сервер.
Для чего такой хостинг? Если даже html не даёт грузить.
1
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
19.02.2023, 19:11  [ТС]
Цитата Сообщение от xkkx Посмотреть сообщение
Для чего такой хостинг? Если даже html не даёт грузить.
Html грузить даёт и в сообщении я об этом написал. Я пишу о том, что именно это решение блокирует по какой-то причине... Исходный вариант функционирует спокойно.
0
0 / 0 / 0
Регистрация: 13.02.2023
Сообщений: 31
01.03.2023, 19:29  [ТС]
Благодарю! Всё получилось!)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.03.2023, 19:29
Помогаю со студенческими работами здесь

Умная парковка
Здравствуйте. Есть такая задача. Нужно подхватывать видеопоток с IP-камеры, передавать это на сервер, к которому подключается Raspberry Pi....

Умная* печать
Доброго времени суток. Стоит задача внедрения модуля печати в готовую программу те необходимы дополнительные функции. Например добавление...

Умная многопоточность
Добрый день! У меня есть проект где используется многопоточность. Суть проекта - оптимизация изображений, каждое изображение в среднем...

Умная форма
Всем привет! Не силен в access Подскажите, пжл, делаю программу учета входящих звонков и запись. Никак не могу найти описание в...

Умная изба
Начало было на предыдущем форуме. Хочется собрать систему, которая бы выполняла следующие функции: 1) Охранно-пожарная сигнализация ...


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

Или воспользуйтесь поиском по форуму:
38
Ответ Создать тему
Новые блоги и статьи
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru