从jquery ui查看this demo 你必须按住Ctrl键进行多项选择 我非常喜欢这些代码,但我不想强迫访问者按下ctrl键 我希望代码允许多个选择,而无需按住ctrl键
这可能吗?
答案 0 :(得分:5)
我在评论中问你一些问题,但我会写一个简单的选择解决方案,这样你就可以看到我在想什么。
所以基本上你可以使用jquery toggle()效果来滚动你自己的选择器。当用户点击您将添加橙色类时,再次点击它将删除橙色类。
$(document).ready( function() {
$('ul#selectable li').toggle( function() {
$(this).addClass('orange'); }, function() {
$(this).removeClass('orange'); } );
});
然后你所有的工作就是用橘子类抓住所有的li元素并将它们发布到一个表格或任何你的最终目标。没有检查过这段代码,但你在做什么是要求selectable中所有li元素在class属性末尾都有橙色值。
使用下面的代码,我正在创建一个新数组,然后将每个“orange li”的text()值添加到其中。
var theSelections = new Array();
$('ul#selectable li[class$="orange"]').each( function(i) {
theSelections[i] = $(this).text();
});
答案 1 :(得分:-1)
是。但是,实现必须允许在第二次单击时取消选择所选项目。您只需稍微修改代码即可实现此目的。
对所有项目执行.selectable('Enable')。
然后你需要在点击所有项目时进行.selectable('toggle')。
这应该可以解决问题。