0

我正在使用 jQuery 脚本,主要部分如下。它允许我选择最多 4 个项目。在做出 5 次选择之前,会出现一条错误消息。

如何更改此设置,以便在选项小于 2 且大于 5 时显示错误消息,并且在选项介于它们之间时显示成功消息?

if ($(this).multiselect("widget").find("input:checked").length > 5) {
    warning.addClass("error").removeClass("success").html("You can only check two checkboxes!");
    return false;
} else {
    warning.addClass("success").removeClass("error").html("Check a few boxes.");
}
4

4 回答 4

1

您可以将检查项目的数量放入局部变量,然后使用复合if语句对其进行多重比较:

var checkedItemsLength = $(this).multiselect("widget").find("input:checked").length;
if(checkItemsLength < 2 || checkItemsLength > 5 ) {
    warning.addClass("error").removeClass("success").html("You can only check two checkboxes!");
    return false;
} else {
    warning.addClass("success").removeClass("error").html("Check a few boxes.");
}
于 2012-07-17T01:03:58.867 回答
0
var selections = $(this).multiselect("widget").find("input:checked");
if(selections.length < 2) {
     warning.addClass("error").removeClass("success").html("You have to check atleast two checkboxes!");
     return false;
} else if (selections.length > 5) {
     warning.addClass("error").removeClass("success").html("You can not check more then five checkboxes!");
     return false;
} else {
     warning.addClass("success").removeClass("error").html("Check a few boxes.");
}
于 2012-07-17T01:03:49.867 回答
0
function doSomeChecking() {
  // assuming 'warning is a reference to some div or span
  var warning = $('#warning');
  var numChecked = $(this).multiselect("widget").find("input:checked").length;
  if (numChecked > 5) {
    warning.addClass("error").removeClass("success").html("You cannot check more than five boxes!");
    return false;
  } else if (numChecked < 2) {
    warning.addClass("error").removeClass("success").html("You must check at least two boxes.");
    return false;
  }
  warning.addClass("success").removeClass("error").html("Life is good.");
  return true;
}
于 2012-07-17T01:04:18.193 回答
0
  if(foo < 2 || foo > 5){

   //do something

  }else {

  //do something else

  }
于 2012-07-17T01:06:58.263 回答