Jquery 我可以设计a<;选择>;元素来显示列?

Jquery 我可以设计a<;选择>;元素来显示列?,jquery,html,css,Jquery,Html,Css,我试图在multiple=multiple的元素中创建一个基于列的列表-我希望在菜单中看到的是: Opt1 Opt5 Opt9 Opt2 Opt6 Opt10 Opt3 Opt7 Opt11 Opt4 Opt8 Opt12 这可能吗?我当然愿意在jQuery中这样做,但更喜欢CSS。我认为CSS不可能做到这一点 但是,您可以进行三次选择,并使用javascript确保只选择其中一次 下面是一个使用jQuery的简单示例: $('.columnse

我试图在multiple=multiple的元素中创建一个基于列的列表-我希望在菜单中看到的是:

Opt1    Opt5    Opt9
Opt2    Opt6    Opt10
Opt3    Opt7    Opt11
Opt4    Opt8    Opt12

这可能吗?我当然愿意在jQuery中这样做,但更喜欢CSS。

我认为CSS不可能做到这一点

但是,您可以进行三次选择,并使用javascript确保只选择其中一次

下面是一个使用jQuery的简单示例:

$('.columnselect').click(function()
{
    var id = $(this).attr('id');
    $('.columnselect:not([id="' + id + '"]) option:selected').attr('selected', false);
})


如果您想使用multi-select,只需删除Javascript代码。

这绝对是可能的

中建议了几个选项

更进一步,添加了autocomplete

如果你在谷歌上搜索“jquery多列下拉列表”,你可以找到更多的选择


顺便说一句,“
multiple
”属性指定用户是否可以在列表中选择多个项目,而不是在下拉列表中是否显示多个列。

否–您不能仅使用CSS设置选择下拉列表的样式(Google Chrome有一些例外),因为它们是操作系统的一部分,不是浏览器

但是,您可以使用JavaScript(有一些非常好的jQuery插件,如下面的:),基本上隐藏原始的select下拉列表,并将其替换为一个
  • -列表或您选择的另一个元素,您可以对其进行样式设置。

    该插件完全符合您的要求:-)


    它使在多个列/行中渲染Select和MultiSelect元素变得非常容易,并使您能够完全控制布局和设计。比在CSS中尝试这样做要容易得多;-)

    这不可能使用本机HTML
    select
    元素。但是,可以使用单击控制输入时显示/隐藏的
    div
    重新创建示例。使用此方法可能会遇到可访问性问题-如果这对您很重要的话。@Rorymcrossan您应该回答这个问题;答案是“不”并不意味着它无效你能行≈任何使用jQuery的东西,都可以构建类似于本机小部件的自定义表单元素。我个人建议不要这样做,因为最终用户体验的变化和功能的丧失通常不值得遵循您的自定义UI愿望。如果仔细观察,“类似问题”会有所不同。OP喜欢有三列选项,而不是同一选项中的三列。@PiTheNumber,这就是为什么我说它是相似的,我没有说它是dup。虽然问题不尽相同,但这里给出的一些答案将非常有用。而且,在这种情况下,从选票上看哪一个是最受欢迎的答案也会有所帮助。这就是为什么我在这里提供了这些信息,在我的回答中。你所要做的就是点击并拖动任何/所有列,你可以在每列中选择一个选项。这就是为什么这是一个简单的例子;)还有13种其他方法可以操作此选择。无论如何,您都必须验证应用程序中的数据。