【发布时间】:2012-12-29 21:01:04
【问题描述】:
这是场景:
<select id="id_user" name="user" multiple="multiple">
<option value="1">User 1</option>
<option value="2">User 2</option>
<option value="3">User 3</option>
<option value="4">User 4</option>
</select>
<span id="select1">Select 1 user</span> <span id="remove1">Remove 1 select</span>
<span id="select2">Select 2 user</span> <span id="remove2">Remove 2 select</span>
<span id="select3">Select 3 user</span> <span id="remove3">Remove 3 select</span>
<span id="select4">Select 4 user</span> <span id="remove4">Remove 4 select</span>
<script type="text/javascript">
$("#select1").click(function(){ $("#id_user").val("1").prop("selected", true);
???
});
$("#remove1").click(function(){ $("#id_user").val("1").prop("selected", false);
???
});
</script>
我想让用户例如点击 Select 1 span,然后点击 Select 2 span,both 选项将在多选中被选中。然后,如果用户单击 Remove 1 select span,则只会删除 Select 1。我不知道如何完成这项任务。当我使用#select2、#select3 (...) 创建其他单击功能时,单击一个选择会删除最后一次单击选择的选项。删除选项也有同样的问题。如何创建Ctrl点击效果?
【问题讨论】:
-
您是否只是因为您希望用户不必按 CTRL 来选择多个选项而使用此方法?或者这是一些 UI 设计决定?
-
这个多选在表单中,选项中的id值是来自django模板变量的动态id。这两件事,我不希望用户必须按 CTRL,这是 UI 设计决定。用户只会看到这个跨度,他们希望能够看到多个选择输入,但它的值需要通过表单发送并写入数据库
-
你听说过(无耻插件)jQuery Multiselect 还是2.0 版本(即将完成)?
-
不,我没有,但现在试试看
标签: javascript jquery jquery-selectors