Html 请输入介于NaN和NaN范围验证之间的值

Html 请输入介于NaN和NaN范围验证之间的值,html,jquery,validation,magento,magento2,Html,Jquery,Validation,Magento,Magento2,我有一个范围滑块,下面有一个代码 <div class="slidecontainer"> <input name="am_giftcard_amount_slider" id="am_giftcard_amount_slider" type="range" min="0" value="13" max="27" step=&q

我有一个范围滑块,下面有一个代码

<div class="slidecontainer">
      <input name="am_giftcard_amount_slider" id="am_giftcard_amount_slider" type="range" min="0" value="13" max="27" step="1" class="gg-slider validate-range range-0-27">
</div>
现在我试着调试它,并在
lib/web/mage/validation.js
中修改文件,现在在函数
validate range
下,我添加了一个硬代码值True,只是为了进行调试,并知道如果错误消息仍然出现,响应是否为True。但是在添加
返回true
后,仍会显示错误消息。我正在看这个错误

`Please enter a value between NaN and NaN`
'validate-range': [
        function (v, elm) {
            
            var minValue, maxValue, ranges, reRange, result, values,
                i, name, validRange, minValidRange, maxValidRange;
            
            if ($.mage.isEmptyNoTrim(v)) {
                return true;
            } else if ($.validator.methods['validate-digits'] && $.validator.methods['validate-digits'](v)) {

                minValue = maxValue = $.mage.parseNumber(v);
            } else {
                ranges = /^(-?\d+)?-(-?\d+)?$/.exec(v);
                if (ranges) {
                    minValue = $.mage.parseNumber(ranges[1]);
                    maxValue = $.mage.parseNumber(ranges[2]);

                    if (minValue > maxValue) { //eslint-disable-line max-depth
                        return false;
                    }
                } else {
                    return false;
                }
            }
            reRange = /^range-(-?\d+)?-(-?\d+)?$/;
            result = true;
            values = $(elm).prop('class').split(' ');
            for (i = values.length - 1; i >= 0; i--) {
                name = values[i];
                validRange = reRange.exec(name);
                if (validRange) {
                    minValidRange = $.mage.parseNumber(validRange[1]);
                    maxValidRange = $.mage.parseNumber(validRange[2]);
                    result = result &&
                        (isNaN(minValidRange) || minValue >= minValidRange) &&
                        (isNaN(maxValidRange) || maxValue <= maxValidRange);

                }
            }
            return result;
        },
        $.mage.__('The value is not within the specified range.')
    ],
`Please enter a value between 2 and NaN`

我知道我把最小值设为2而不是0。我故意这样做是为了知道它是否真的检索到了正确的参数。现在基于此。它能够获得最小值
2
,但为什么最大值
17
没有被读取?

似乎消息
请输入NaN和NaN之间的值
来自jquery验证系统,而不是magento one,因为magento只返回此消息:“值不在指定范围内。”

您应该考虑使用magento验证规则中的
验证数字范围
数字范围-2-17

`Please enter a value between 2 and NaN`