我已经制作了这个简单的表单,它应该可以正常工作。我似乎找不到问题所在。它工作得很好,直到数字字段(长度和宽度)的输入值为9,但当我输入10或更大时,它要求输入更大的数字。
代码如下:
HTML
<div class="form-group col-md">
<label class="form-label mb-1 text-2" for="length">Length</label>
<input type="number" class="form-control text-3 h-auto py-2 sizes-units" name="length" id="length" value="{{ Request::Input('length') }}">
</div>
<div class="form-group col-md">
<label class="form-label mb-1 text-2" for="width">Width</label>
<input type="number" class="form-control text-3 h-auto py-2 sizes-units" name="width" id="width" value="{{ Request::Input('width') }}">
</div>
<div class="form-group col-md">
<label class="form-label mb-1 text-2" for="height">Height</label>
<input type="number" class="form-control text-3 h-auto py-2 sizes-units" name="height" id="height" value="{{ Request::Input('height') }}">
</div>Jquery
rules: {
length: {
required: true,
min: 2,
max: 30,
greaterThanEqual: "#height",
},
width: {
required: true,
min: 2,
max: 30,
greaterThanEqual: "#height",
},
height: {
required: true,
min: 1,
max: 7,
}
}如果这可能是一个愚蠢的问题,我很抱歉。我只在php和laravel上工作过。通过使用预先构建的一切或使用服务器端验证,我基本上能够避免任何javascript。我不能在这种情况下,因为这个表单应该计算同一页上的价格,并使用“获取”请求,所以…
发布于 2021-11-16 23:17:04
首先,我假设你使用jQuery validation作为验证插件--你还没有指定。
我不能100%确定,但我相当确定是你的'greaterThanEqual‘规则造成了至少一些问题。
编辑:
既然你已经确认你正在使用https://github.com/jquery-validation/jquery-validation/blob/master/src/additional/greaterThanEqual.js方法,那么从我的测试来看,这应该只是一个改变的例子:
return value >= target.val();至
return value >= parseInt(target.val());将值转换为整数,而不是您所怀疑的字符串。现在,这似乎起作用了。
https://stackoverflow.com/questions/69996836
复制相似问题