我在项目中使用这个jQuery UI Multiselect脚本:http://www.quasipartikel.at/multiselect/index.html,我需要一些帮助。 如何限制可以选择的项目的最大数量...到10个项目,让我们说!?
谢谢!
答案 0 :(得分:2)
这是一个旧线程,但对于遇到此问题的任何人 - 这是限制为Hynds版本选择的复选框行数的官方方法
注意:我建议为尝试选择超过允许的最大值的用户显示一个邮件类。此外,从作为第一指数值的零'0'开始计数“> 10”,意味着在该示例中选择0,1,2,3,... 9 = 10最大值。
<强>答案:强>
var warning = $(".message");
$("select").multiselect({
header: "Choose only TEN items!",
click: function(e){
if( $(this).multiselect("widget").find("input:checked").length > 10 ){
warning.addClass("error").removeClass("success").html("You can only check ten checkboxes!");
return false;
} else {
warning.addClass("success").removeClass("error").html("Check a few boxes.");
}
}
});
答案 1 :(得分:0)
也许这会对你有所帮助:
$("select").multiselect({
header: "Choose only TEN items!",
click: function(e){
if( $(this).multiselect("widget").find("input:checked").length > 10 )
{
return false;
}
else
{
return true;
}
}
});
答案 2 :(得分:0)
请注意,一旦达到所需的最大值,您也可以禁用剩余的项目,这将阻止用户添加更多内容,从而获得您想要的效果:
$('#multiselect').bind('multiselectChange', function(evt, ui) {
var selectedCount = $("option:selected", this).length;
$(this)
.find('option:not(:selected)').prop('disabled', selectedCount >= MAXIMUM_SELECTED_HERE).end()
.multiselect('refresh');
});