隐藏和显示字段集
Hide and Show field set
我想用切换来隐藏/显示字段集。但这行不通!有人能帮帮我吗?我不知道我的代码出了什么问题,我想切换它。最后两个字段集必须隐藏,并且必须通过单击单选按钮来启用。
<section>
<h1>Aanmelden</h1>
<p>Bent u geïnteresseerd in samenwerken met CMD Amsterdam? Dat kan!Tijdens de opleiding werken studenten aan projecten voor echte opdrachtgevers.Ook lopen de studenten stage, in het tweede en afstudeerjaar.
<em>CMD Amsterdam zoekt altijd naar positieve verbindingen met de creatieve stad Amsterdam.</em>
Voor het aanmelden van stageplekken of projecten kunt u onderstaand formulier invullen Wij nemen zo nodig contact met u op nadat het formulier is verstuurd. Voor vragen of opmerkingen kunt u <a href="contact.html">contact</a> met ons op.
</p>
</section>
<form>
<fieldset>
<legend>Contactgegevens</legend>
<label for="Naam">Naam</label>
<input id="Naam" type="text" required/>
<label for="Bedrijf">Bedrijf</label>
<input id="Bedrijf" type="text" required/>
<label for="Adres">Adres</label>
<input id="Adres" type="text" required/>
<label for="Postcode">Postcode</label>
<input id="Postcode" type="text" pattern="[1-9][0-9]{3}'s?[a-zA-Z]{2}" required/>
<label for="Plaats">Plaats</label>
<input id="Plaats" type="text" required/>
<label for="Telefoon">Telefoon</label>
<input id="Telefoon" type="text" required/>
<label for="Email">Email</label>
<input id="Email" type="text" required/>
Ik wil mijn aanmelden:
<input id="Project" type="radio" required/>
<label for="Project">Voor een project</label>
<input id="Stage" type="radio" required/>
<label for="Stage">Als stagebedrijf</label>
</fieldset>
<fieldset >
<legend>Project</legend>
<label for="Titel">Titel</label>
<input id="Titel" type="text"/>
<label for="Opdrachtomschrijving">Opdrachtomschrijving</label>
<input id="Opdrachtomschrijving" type="text"/>
<label for="Doelgroepomschrijving">Doelgroepomschrijving</label>
<input id="Doelgroepomschrijving" type="text"/>
<label for="Doelstelling">Doelstelling / intentie van het project</label>
<input id="Doelstelling" type="text"/>
<label for="Looptijd">Looptijd (maximaal 24 maanden)</label>
<input id="Looptijd" type="range" min="1" max="24"/>
<label for="Deadline">Deadline</label>
<input id="Deadline" type="date"/>
Geschikt voor
<input id="eerstejaars" type="radio"/>
<label for="eerstejaars">Eerstejaars studenten</label>
<input id="tweedejaars" type="radio"/>
<label for="tweedejaars">Tweedejaars studenten</label>
<input id="derdejaars" type="radio"/>
<label for="derdejaars">Derdejaars studenten</label>
<input id="afstudeer" type="radio"/>
<label for="afstudeer">Afstudeer studenten</label>
<input id="onbekend" type="radio"/>
<label for="onbekend">Onbekend</label>
Opmerkingen?
<input id="opmerkingen" type="text"/>
</fieldset>
<fieldset>
<legend>Stage</legend>
Geschikt voor:
<input id="tweedestage" type="radio"/>
<label for="tweedestage">Tweedejaars studenten</label>
<input id="afstudeerders" type="radio"/>
<label for="afstudeerders">Afstudeer studenten</label>
<input id="nietbekend" type="radio"/>
<label for="nietbekend">Onbekend</label>
Hoe lang is de stage?
<input id="tien" type="radio"/>
<label for="tien">Tien weken</label>
<input id="twintig" type="radio"/>
<label for="twintig">Twintig weken</label>
<input id="unknown" type="radio"/>
<label for="unknown">Onbekend</label>
<label for="begindatum">Begindatum</label>
<input id="begindatum" type="date"/>
<label for="werkzaamheden">Beschrijving werkzaamheden</label>
<input id="werkzaamheden" type="text"/>
Beschrijving stagebedrijf
<label for="bedrijfsnaam">Bedrijfsnaam</label>
<input id="bedrijfsnaam" type="text" required/>
<label for="address">Adres</label>
<input id="address" type="text" autocomplete="off"/>
<label for="zip">Postcode</label>
<input id="zip" type="text" pattern="[1-9][0-9]{3}'s?[a-zA-Z]{2}
"/>
<label for="woonplaats">Plaats</label>
<input id="woonplaats" type="text" required/>
<label for="sector">Sector</label>
<input id="sector" type="text"/>
<label for="core">Core Business</label>
<input id="core" type="text"/>
Opmerkingen?
<input id="opmerking" type="text"/>
</fieldset>
<input id="verzenden" type="submit"/>
</form>
</body>
body{
background: #efefef;
min-height: 100%;
font: 100%/1.5 helvetica, arial;
}
label {
display: block;
margin: 0 0 1em;
}
label > input {
display: block;
}
input[type="radio"] + label{
display: inline;
}
input, button {
font: inherit;
}
fieldset{
background: linear-gradient(45deg, #fff, lime);
}
.is-invisible{
display: none;
}
.is-visible {
display: block;
}
JAVASCRIPT:
var fieldset = document.querySelector('fieldset:nth-of-type(2,3)');
fieldset.classlist.add('hidefieldset');
document.querySelector('input[type="radio"]').onclick = function() {
fieldset.classList.add('showfieldset');
}
document.querySelector('input[type="radio"]:last-of-type').onclick = function() {
fieldset.classlist.remove('showfieldset');
}
感谢您帮助xx
我所做的是:
<legend class="legend">
<div style="display:none;">
... content ...
</div>
然后使用jQuery:
$(".legend").click(function(e) { $(this).next("div").toggle(); });
这将使图例保持可见和可单击状态。向用户显示它可以通过一些CSS:点击
.legend { cursor: pointer; }
我会用jQuery的toggle方法来解决您的问题。首先,我创建了一个带有toggle类的按钮。因此,每次用户单击按钮时,fieldset元素的内容都会在每次单击事件中显示和隐藏。但由于按钮具有默认操作,可以像锚定链接一样实际提交某些内容,
这是代码
$(document).ready(function() {
$(".toggle").click(function(e) {
e.preventDefault();
$("fieldset").toggle();
})
})
Jsfddle
如果您不能在输入上使用jQuery集合id
<input id="Project" type="radio" name="ps" required/>
<label for="Project">Voor een project</label>
<input id="Stage" type="radio" name="ps" required/>
<label for="Stage">Als stagebedrijf</label>
并使用脚本
function $(id){
return document.getElementById(id);
}
var fieldset = [ $('fProject'), $('fStage') ];
fieldset[0].style.display = 'none';
fieldset[1].style.display = 'none';
$('Project').onclick = function() {
fieldset[0].style.display = 'block';
fieldset[1].style.display = 'none';
};
$('Stage').onclick = function() {
fieldset[1].style.display = 'block';
fieldset[0].style.display = 'none';
};
相关文章:
- SIMPLE Javascript代码,用于显示谷歌电子表格中单个字段的数据
- 根据页面加载时的单选按钮选择显示某些字段
- 如果选择单选按钮,则显示字段
- 如何在html中将密码字段显示为秒后的星号
- 提交表单时,显示或识别隐藏的必填字段并将其集中
- 仅当选择了特定选项时才显示输入字段
- 我有一个字段计算,如果结果低于 60,则需要显示最小值
- 如何根据文本长度立即显示和隐藏字段?-JQuery
- 使用SAPUI5中的“文本”字段显示正确的“日期”
- jQuery Mobile根据选择字段显示/隐藏表单输入
- 使用JS或Jquery-是否可以有一个只读字段,该字段显示有掩码,但在复制时不显示掩码值
- 无法根据下拉列表或输入字段显示表中的行数
- 当我们双击输入字段时,我不希望输入字段显示已经输入的数据.我该怎么办呢?
- 字段显示为浏览器自动填充,使用js访问时为空白
- 如何在密码字段显示4位数字
- 使用CSS和Jquery使字段显示
- jQuery显示/隐藏选项选择字段显示框,我试图显示在所有其他选项
- 用javascript从上传文件字段显示文件名
- 只在上传字段显示文件名
- 替换输入字段's显示