我有一个下拉列表,里面有我的选择。单击该选项时,必须分别显示字段。比如option1 ==一个文本框,option2 ==两个文本框等等……
<select id="dropdown"> <option value="A">option1</option> <option value="B">option2</option> <option value="C">option3</option> <option value="D">option4</option> </select>
单击option1时,必须显示一个字段。在option2上有两个字段..我是javascript和html的新手。请帮助朋友们..
发布于 2013-03-28 18:52:22
如果你可以使用jquery,它可以像下面这样完成。在change上,选择包含要显示的文本框数量的数据属性。然后for循环遍历它们并追加。
Html:
<select id="dropdown"> <option value="A" data-number="1">option1</option> <option value="B" data-number="2">option2</option> <option value="C" data-number="3">option3</option> <option value="D" data-number="4">option4</option> </select> <div id="textBoxContainer"> </div>
Javascript:
$('#dropdown').change(function(){ $('#textBoxContainer').empty(); var number = $(this).find('option:selected').attr('data-number'); for (var i = 0; i < number; i++){ $('#textBoxContainer').append('<input type="text"/>'); });
发布于 2013-03-28 18:39:23
<select id="dropdown" onChange="showHide()"> <option value="A">option1</option> <option value="B">option2</option> <option value="C">option3</option> <option value="D">option4</option> </select> function showHide() hideAll(); var val = document.getElementById("dropdown").value; if(val == "A") document.getElementById("firstTextBoxId").style.display = 'block'; else if(val == "B") document.getElementById("secondTextBoxId").style.display = 'block'; else if(val == "C") document.getElementById("ThirdTextBoxId").style.display = 'block'; else if(val == "D") document.getElementById("FourthTextBoxId").style.display = 'block'; function hideAll()