Dynamic select input
by arcm111
HTML
<form id="formname" name="formname" method="post" action="submitform.asp">
<table width="50%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td width="41%" align="right" valign="middle">Category :</td>
<td width="59%" align="left" valign="middle">
<select name="category" id="category" onchange="dropdownlist(this.options[this.selectedIndex].value);">
<option value="">Select Category</option>
<option value="Home Ware">Home Ware</option>
<option value="Education">Education</option>
<option value="Books">Books</option>
</select>
</td>
</tr>
<tr>
<td align="right" valign="middle">Sub Category :</td>
<td align="left" valign="middle">
<select name="subcategory" id="subcategory" onchange="createLink(this.options[this.selectedIndex].value)">
<option value="">Select Sub - Category</option>
</select>
</td>
</tr>
</table>
</form>
JavaScript
function dropdownlist(listindex) {
document.formname.subcategory.options.length = 0;
switch (listindex) {
case "Home Ware":
document.formname.subcategory.options[0] = new Option("Select Sub-Category", "");
document.formname.subcategory.options[1] = new Option("Air-Conditioners/Coolers", "Air-Conditioners/Coolers");
break;
case "Education":
document.formname.subcategory.options[0] = new Option("Select Sub-Category", "");
document.formname.subcategory.options[1] = new Option("Colleges", "Colleges");
document.formname.subcategory.options[2] = new Option("Institutes", "Institutes");
break;
case "Books":
document.formname.subcategory.options[0] = new Option("Select Sub-Category", "");
document.formname.subcategory.options[1] = new Option("College Books", "College Books");
document.formname.subcategory.options[2] = new Option("Engineering", "Engineering");
break;
}
return true;
}
function createLink(val) {
var mylink = document.getElementById('mylink') || false;
if (mylink) document.body.removeChild(mylink);
if (val == "") return;
var link = document.createElement('a'),
txt = document.createTextNode(val);
link.name = "mylink";
link.id = "mylink";
link.href = "path/to/directory/" + val;
link.appendChild(txt);
document.body.appendChild(link);
}