简体   繁体   English

Javascript-多个SELECT框,删除“ SELECTED”选项

[英]Javascript - Multiple SELECT boxes, remove 'SELECTED' options

We're wanting to rank people in order, but don't want to allow the same option to be selected more than once: 我们想对人员进行排序,但不想一次选择同一选项:

Person Number 1
<select name="person1">
<option value="null">Please Select an option</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

Person Number 2
<select name="person2">
<option value="null">Please Select an option</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

Person Number 3
<select name="person3">
<option value="null">Please Select an option</option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>

So here, if someone chooses option 1 in the first person box, all the option boxes would be repopulated with that option removed (or disabled). 因此,在这里,如果某人在第一人称框中选择选项1,则所有选项框都将被重新填充,而该选项将被删除(或禁用)。

Obviously the first option - null 'Please Select an Option' must be ignored. 显然,第一个选项-空“请选择一个选项”必须忽略。

I would also need some kind of 'reset' functionality? 我还需要某种“重置”功能吗?

No idea where to start with this, any ideas? 不知道从哪里开始,有什么想法?

thanks! 谢谢!

If I understand correctly, you have N persons that you want to rank from 1 to N (there's nobody left out of the ranking). 如果我理解正确,您有N个人希望从1到N排名(没有人被排除在排名之外)。

If JavaScript components are an acceptable option for your context, then I would suggest you use the «Sortable» component : 如果JavaScript组件是适合您的上下文的选项,那么我建议您使用«Sortable»组件:

http://jqueryui.com/sortable/ http://jqueryui.com/sortable/

It could give a better user experience than having multiple "select" elements. 与具有多个“选择”元素相比,它可以提供更好的用户体验。

EDIT : Ok I see from the comments that you really want to use N "select". 编辑 :好的,我从注释中看到您确实要使用N“选择”。 As suggested by Flea777 you should look at the .change() event of JQuery, and set the "disabled" attribute on the "option" entries which have already been selected : http://www.w3schools.com/tags/att_option_disabled.asp 正如Flea777所建议的那样,您应该查看JQuery的.change()事件,并在已选择的“选项”条目上设置“禁用”属性: http : //www.w3schools.com/tags/att_option_disabled。天冬氨酸

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM