我正在制作一个注册页面,用户可以选择注册为员工或管理员(单选按钮)。如果他选择以管理员身份注册,我需要添加他应该知道的密码字段(公司应该向他提供该密码)。 这是我试过的
<form method="post" action="Registration.php" onSubmit="return valid(this)">
#some code here
Admin<input type="radio" name="radiobutton" id="v2" value="v2" onclick="ch()">
<script type="text/javascript">
function ch(){
var newInput=document.createElement("input");
newInput.setAttribute('type','password');
newInput.setAttribute('name','password');
newInput.setAttribute('value','password');
document.getElementById("v2").appendChild(newInput);
}
</script>
注意:这是我第一次使用javascript! 编辑代码,仍然无法正常工作。
答案 0 :(得分:0)
Jquery更容易使用:
$(selector).append("<input type="password" name="password" value="password">");
答案 1 :(得分:0)
您创建了一个新的<input>
元素,但您从未将其放入文档中。
如果要查看该元素,则需要通过在现有元素上调用appendChild()
将其添加到DOM树中的某个位置。
答案 2 :(得分:0)
更好的方法是让一个名为“hidden”的类隐藏具有该类的元素。因此,如果我们点击员工电台,我们会将管理字段的div分配给隐藏的类,从而隐藏它并从员工字段中删除隐藏的类。
Admin<input type="radio" name="radiobutton" id="v2" value="v2" onclick="changefields(1)">
Employee<input type="radio" name="radiobutton" id="v2" value="v2" onclick="changefields(2)">
<div id='employees' class='hidden'>
<!-- input for employees -->
</div>
<div id='admins' class='hidden'>
<!-- input for admins -->
</div>
<script>
function changefields(type){
if(type==2){
$("#employees").removeClass("hidden");$("#admins").addClass("hidden");
}
else{
$("#admins").removeClass("hidden");$("#employees").addClass("hidden");
}
}
</script>
<style>.hidden{display:none}</style>
答案 3 :(得分:0)
您需要创建一个新元素。
var newInput=document.createElement("input");
并通过appendChild()
将相同的元素附加到DOM。