Помощь в смене действий при OnClick
Добрый день.
В JS полный ноль. Нужна помощь в объяснении. Делаю пригласительный на свою свадьбу, при нажатии на картинку, картинка должна пропасть и открыться форма ввода текста, после ввода определенного значения в форму, форма пропадает и выходит текст приветствия,т.е, если в форму ввести имя Александр, то форма пропадет и появится текст "Александр Мы приглашаем тебя....". Понимаю что это задается условие, реализовал такое на Delphi RAD Studio 10.1, но в JS не соображу никак. В Delphi скрыл форму ввода и текст, Click на картинку, картинка принимается visible: false, форма visible:true, после ввода имени в форму, форма принимает значение visible:false, а текст visible:true. Просто проблема в том что я хочу отправить пригласительные через ВК, но там к сожалению невозможно нормально переслать exe, к тому же многие будут просматривать через телефон, поэтому решил реализовать посредством сайта. Заранее прошу прощения за очень большое количество текста:) |
Цитата:
|
<img src="images/first.png" id="welcome"> <input type="text" id="name" placeholder="Введите имя" style="display: none;"> <label style="display:none" id="done"></label> Начало только могу, не пойму как описать функцию чтобы поочередно они сменяли друг друга и как в label вытащить имя из text не понимаю. |
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> .off { display: none; } </style> <script type='text/javascript'> $(function(){ $('#welcome').click(function(){ $(this).addClass('off'); $('#info').removeClass('off'); }); $('#info').submit(function(){ $(this).addClass('off'); var o=$('#done'); o.text($('#name').val()); o.removeClass('off'); return false; }); }); </script> </head> <body> <img src="https://javascript.ru/forum/images/smilies/smile.gif" id="welcome" /> <form class='off' id='info'> <input type="text" id="name" placeholder="Введите имя" /> </form> <label id="done" class='off'></label> </body> </html> |
ksa,
В хроме ваш пример молчит. Поменяйте <script src='http*!*s*/!*://code.jquery.com/jquery-latest.js'></script> |
Цитата:
|
ksa,
В данном контексте это важно: я запускаю ваш пример - он молчит. Зачем тогда он исполняемый? |
Цитата:
Не подскажешь еще одно, свой текст, который должен выводится вместе с тем что пользователь введет, куда его в коде прописать. По сути он должен быть между тэгами <label>, но в нем выводится только то, что пользователь написал в форме. |
Цитата:
Как брать, как вставлять я показал. А дизайн и исполнение придумывай сам. :) Цитата:
<label></label> Предназначен для работы вкупе с <input /> Для оформления строковых кусков текста есть <span></span> |
Цитата:
|
Цитата:
Label1.Caption:=(Edit1.Text + ' ! ' + #10 + 'Текст который нужно написать и выведется совместно с тем что вводил пользователь') Сорри что мучаю, просто реально для меня js, как огромный лес. |
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> .off { display: none; } </style> <script type='text/javascript'> $(function(){ $('#welcome').click(function(){ $(this).addClass('off'); $('#info').removeClass('off'); }); $('#info').submit(function(){ $(this).addClass('off'); $('#done span').text($('#name').val()); $('#done').removeClass('off'); return false; }); }); </script> </head> <body> <img src="https://javascript.ru/forum/images/smilies/smile.gif" id="welcome" /> <form class='off' id='info'> <input type="text" id="name" placeholder="Введите имя" /> </form> <p id="done" class='off'>Вот так надо, <span></span>!</p> </body> </html> |
ksa,
Спасибо большое друг! |
Цитата:
Как сделать, чтобы при вводе определенного значения, к примеру имя "Иван", в span вывелось "Товарищ". Я так понимаю нужно будет задать переменную со значением "Товарищ", которую мы опишем в условии, что при вводе "Иван" выведется то что в задано в var, или же это можно показать в условии. Пытаюсь описать так, но код не работает: <!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> .off { display: none; } </style> <script type='text/javascript'> $(function(){ $('#welcome').click(function(){ $(this).addClass('off'); $('#info').removeClass('off'); }); $('#info').submit(function(){ $(this).addClass('off'); $('#done span').text($('#name').val()); if ($('#name').val()=='Ирина'|| $('#name').val()=='Илья') $('#done').removeClass('off'); else { alert ('Возможно вы ошиблись при вводе и сделали опечатку!'); return true; } else if{ $(('#done span').text=='Товарищ'); if ($('#name').val()=='Иван') } return false; }); }); </script> </head> <body> <img src="https://javascript.ru/forum/images/smilies/smile.gif" id="welcome" /> <form class='off' id='info'> <input type="text" id="name" placeholder="Введите имя" /> </form> <p id="done" class='off'>Вот так надо, <span></span>!</p> </body> </html> Но так не работает, не пойму почему, из-за множества условий или вероятнее всего я делаю большую ошибку. |
Цитата:
Как вариант... <!DOCTYPE html> <html> <head> <meta http-equiv='Content-Type' content='text/html; charset=windows-1251' /> <script src='https://code.jquery.com/jquery-latest.js'></script> <!-- <script src="https://code.angularjs.org/1.3.9/angular.min.js"></script> <script src="https://code.angularjs.org/1.3.9/angular-route.js"></script> --> <style type='text/css'> .off { display: none; } </style> <script type='text/javascript'> $(function(){ $('#welcome').click(function(){ $(this).addClass('off'); $('#info').removeClass('off'); }); $('#info').submit(function(){ $(this).addClass('off'); var val=$('#name').val(); val=(val=='Иван')? 'Товарищ': val; $('#done span').text(val); $('#done').removeClass('off'); return false; }); }); </script> </head> <body> <img src="https://javascript.ru/forum/images/smilies/smile.gif" id="welcome" /> <form class='off' id='info'> <input type="text" id="name" placeholder="Введите имя" /> </form> <p id="done" class='off'>Вот так надо, <span></span>!</p> </body> </html> |
Цитата:
То есть, определенные имена он меняет на другое значение , а другие имена пропускает для дальнейшего действия. |
Усе, разобрался.
Ksa, красавец, спасибо за помощь.:thanks: Снимаю шляпу. |
Часовой пояс GMT +3, время: 09:28. |