仅当存在最小值和最大值时,如何显示错误消息?

时间:2015-03-16 01:01:58

标签: javascript

如果用户选择"我创建了一个返回最小值和最大值的函数。之间"或者只是基于用户选择的操作员的最小值或最大值。

当用户选择"之间"运算符并输入MIN值,即使最小值为正且是数字,它也会显示和错误消息。我希望它只显示错误消息; y输入最大值后,仅当最大值为不正确。

如果输入最小值和最大值,则如何显示错误消息..错误。

   function minmaxval(min, max, op) {
            var rVal = "",
                msg = "",
                errormsg = "Enter a Max Value larger then Min Value and all number should be greater then 0!",
                errormsg2 = "Enter a  number greater then  0!";
            if (operator === "between") {
                if (this.getNumber(min) !== false && this.getNumber(max) !== false && (min < max) && (min > 0)) {
                    displayMessage(min, max, msg);
                    rVal = "(" + min + " - <span class='truncate'> " + max + "</span>)";
                } else {
                  if((min!="")&&(max!="") &&(min>max)) {
                    displayMessage(min, max, errormsg);
                    rVal = "";
                   }
                }
            } 
            return rVal    ;
        }

  displayMessage(min,max,msg) {

      document.getElementByID("#err").innerHTML=msg;
)

1 个答案:

答案 0 :(得分:0)

operator === "between"区块内,找到:

if (this.getNumber(min) !== false && this.getNumber(max) !== false && (min < max) && (min > 0)) {

...并将其更改为:

if (   (this.getNumber(min) && min > 0) 
    || (this.getNumber(min) && this.getNumber(max) && min < max)
) {

在您发布的代码中,您需要getNumber(min)getNumber(max)为真,以便执行您的第一个条件,而不是显示错误消息。如果getNumber(min)true并且min大于0或者truemin,则更改为您的第一个条件小于max。请务必包括括号,以便按正确的顺序对运算符进行求值。