Помощь в смене действий при 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, время: 10:28. |