how to switch/choose between html forms
I have a little problem, and an need your profesisonal...
So i have two forms in two div. DIV ID=A 开发者_StackOverflow中文版and DIV ID=B
When a user visit my site, a would like to offer the visitor to choose between the forms. he user see a drop down box, or two radio button, and if select option A then form A load, if B...then B..
But i don't know how to do this, and what is the best practise to do this? May i use simple html, and after choose redirect to a subpage like formA.php and formB.php? Or use Jquery and simple hide and show the needed div?
What do ya suggest? And how im a do that?
Than you.
Jquery or similiar would be the most elegant imo. something like
<script type="text/javascript">
$(document).ready(function() {
// hide the forms when page is ready
$('#a').hide();
$('#b').hide();
$('#button1').click(function(){
$('#a').show();
});
$('#button2').click(function(){
$('#b').show();
});
});
</script>
hide the forms, have 2 buttons (can be styled divs),. then when they are clicked, show the respective HTML form.
could be extended to "toggle" the forms, or only allow 1 to be selected.
problems may occur if JS is disabled however (both forms will be visible)
You can easily use a drop down to select the correct form. Here's an example
<!-- Forms HTML -->
<div id="form-A">
... html form here ....
</div>
<div id="form-B">
... another html form here ....
</div>
<!-- Hide forms initially with Javascript (visible for non Javascript users) -->
<script type="text/javascript">
$("#form-A, #form-B").hide();
</script>
<!-- A dropdown to select a value -->
<select id="choose-form">
<option>Please choose...</option>
<option value="form-A">Some form</option>
<option value="form-B">Another form</option>
</select>
<!-- and some simple jQuery -->
<script type="text/javascript">
$(document).ready(function() {
$("#choose-form").change(function() {
//Hide -other- visible forms
$("#form-A, #form-B").hide();
$("#" + $(this).val()).show();
});
});
</script>
Use .animate()
$('.message a').click(function() {
$('form').animate({
height: "toggle",
opacity: "toggle"
}, "slow");
});
.login-page {
width: 360px;
padding: 8% 0 0;
margin: auto;
}
.form {
position: relative;
z-index: 1;
background: #FFFFFF;
max-width: 360px;
margin: 0 auto 100px;
padding: 45px;
text-align: center;
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}
.form input {
font-family: "Roboto", sans-serif;
outline: 0;
background: #f2f2f2;
width: 100%;
border: 0;
margin: 0 0 15px;
padding: 15px;
box-sizing: border-box;
font-size: 14px;
}
.form .btn {
font-family: "Roboto", sans-serif;
text-transform: uppercase;
outline: 0;
background: #4CAF50;
width: 100%;
border: 0;
padding: 15px;
color: #FFFFFF;
font-size: 14px;
-webkit-transition: all 0.3 ease;
transition: all 0.3 ease;
cursor: pointer;
}
.form button:hover,
.form button:active,
.form button:focus {
background: #43A047;
}
.form .message {
margin: 15px 0 0;
color: #b3b3b3;
font-size: 12px;
}
.form .message a {
color: #4CAF50;
text-decoration: none;
}
.form .register-form {
display: none;
}
.infoo {
margin: 50px auto;
text-align: center;
}
.infoo h1 {
margin: 0 0 15px;
padding: 0;
font-size: 36px;
font-weight: 300;
color: #1a1a1a;
}
.infoo span {
color: #4d4d4d;
font-size: 12px;
}
.infoo span a {
color: #000000;
text-decoration: none;
}
.infoo span .fa {
color: #EF3B3A;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="login_page" class="login-page">
<div class="form">
<form id="register_form" class="register-form">
<input type="text" placeholder="Username" />
<input type="password" placeholder="password" />
<input type="text" placeholder="email address" />
<input type="submit" class="btn" value="Sign up" />
<p class="message">
Already registered?
<a href="#">Sign In</a>
</p>
</form>
<form id="login_form" action="#" method="POST" class="login-form">
<input name="username" id="username" type="text" placeholder="username" />
<input name="password" id="password" type="password" placeholder="password" />
<input id="btnLg" type="submit" class="btn" value="Sign in" />
<p class="message">
Not registered?
<a href="#">Create an account</a>
</p>
</form>
</div>
</div>
I would use jQuery as described by Ross then as you suggest yourself, if Javascript is turned off redirect them according to their choice.
精彩评论