【发布时间】:2018-06-15 03:00:40
【问题描述】:
我的团队正在为即将举行的公司赠品/比赛制作表格,需要一些帮助。此表格以 10 个多项选择题为中心,我们将在右侧栏中的 20 个选项中提供答案。
我们的目标是消除用户在使用 JavaScript 或 jQuery 浏览 10 个字段时所做的任何猜测。我将要分享的代码有效地将所需的 CSS 效果添加到相应的选择中,如果该下拉字段发生更改,它会删除该类。如果我们只使用一个下拉选择,这将起作用。
但是,我遇到的问题是 CSS 类,除非您选择与之前选择的选项值相同的选项值,否则在您进行下一次选择时将被删除。例如,如果您在第一个下拉列表中选择“一个”,它将被正确划掉,直到您在下拉列表 2 到 10 中选择任何其他选项值(即 2-20)。第二个选择将是唯一被划掉的列表项。
目标:如果从任何下拉菜单中选择选项值,则需要将其划掉。如果它被选中然后从所有下拉列表中取消选择,则需要完全删除 CSS 类。
如果我的格式和问题不清楚,我深表歉意;这是我的第一篇文章。提前谢谢你。
小提琴:https://jsfiddle.net/ehcx8vun/16/
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="left">
<select name="one" class="mySelect">
<option value="">---</option>
<option value="One">One</option>
<option value="Two">Two</option>
<option value="Three">Three</option>
<option value="Four">Four</option>
<option value="Five">Five</option>
</select>
<select name="two" class="mySelect">
<option value="">---</option>
<option value="One">One</option>
<option value="Two">Two</option>
<option value="Three">Three</option>
<option value="Four">Four</option>
<option value="Five">Five</option>
</select>
<select name="three" class="mySelect">
<option value="">---</option>
<option value="One">One</option>
<option value="Two">Two</option>
<option value="Three">Three</option>
<option value="Four">Four</option>
<option value="Five">Five</option>
</select>
<select name="four" class="mySelect">
<option value="">---</option>
<option value="One">One</option>
<option value="Two">Two</option>
<option value="Three">Three</option>
<option value="Four">Four</option>
<option value="Five">Five</option>
</select>
<select name="five" class="mySelect">
<option value="">---</option>
<option value="One">One</option>
<option value="Two">Two</option>
<option value="Three">Three</option>
<option value="Four">Four</option>
<option value="Five">Five</option>
</select>
</div>
<div class="right">
<ul>
<li class="multiple-choice-list">One</li>
<li class="multiple-choice-list">Two</li>
<li class="multiple-choice-list">Three</li>
<li class="multiple-choice-list">Four</li>
<li class="multiple-choice-list">Five</li>
</ul>
</div>
【问题讨论】:
-
这是你想要的吗? jsfiddle.net/ehcx8vun/20
-
@WestFarmer 这绝对是更近了一步。假设您想通过选择默认的“---”来清除答案,我们希望删除先前选择的猜测的样式。例如,您选择值“One”,但后来决定这不是答案,需要从该列表项中删除 class selected-option。谢谢。
标签: javascript jquery html css