【发布时间】:2015-06-14 17:18:12
【问题描述】:
我正在使用以下 jQuery 函数来显示在选择框中选择值时的特定表单。
<script>
$("#selectCategory").on("change", function() {
$("#" + $(this).val()).show();
})
</script>
选择选项值与表单 id 匹配。我面临的问题是,在第一个 onchange 事件中,代码工作正常。但是在随后的 onchange 事件中,新表单会附加到现有表单上。例如,如果我选择#xyz 选项,则会呈现#xyz 表单。但是现在如果我将选择选项更改为#abc,#abc 表单将附加到#xyz 表单。
如果用户更改了他的选择,则应删除原始表单,然后呈现新表单。例如,如果我在选择#xyz选项后选择#abc选项,则#xyz表单应该被删除,#abc表单应该显示在它的位置。
<select id="selectCategory" name="category" style="width:100%;" tabindex="1">
<option value=""></option>
<option value="book">Textbooks/Course Material</option>
<option value="compexam">Entrance Exam Books</option>
</select>
<form class="upload" id="book" onsubmit="return checkUpload();" action="" method="POST" enctype="multipart/form-data" style="display:none">
<form class="upload" id="compexam" onsubmit="return checkUpload();" action="" method="POST" enctype="multipart/form-data" style="display:none" >
我希望这是可以理解的!
【问题讨论】:
标签: javascript jquery forms onchange