Safari浏览器html输入类型最小值最大验证不起作用

时间:2014-07-03 19:15:57

标签: html validation numbers max min

我想知道在使用输入类型="数字"时,是否使用Safari浏览器(MAC OS和版本7.0.4(9537.76.4))进行表单验证工作不正常: 访问时 http://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_input_max_min
使用Safari浏览器我希望当我输入一个超出指定范围的字母或数字进入"数量"领域。但没有任何反应,输入被发送到服务器...
使用Chrome时,我收到警告......
我还检查了http://html5test.com站点,并指出支持输入类型编号和最小和最大属性。但为什么它不工作?我做错了什么或者我不理解什么?

任何帮助都非常感谢...

由于 托比

编辑:正如Frank Conijn提到的那样,它并不适用于Safari。我现在用Javascript解决了它(检查所有数字输入字段,如果它们包含一个数字,如果它在指定的范围内):

$("input[type='number']").change(function(){
    var maxValue = parseInt($(this).attr('max'));
    var minValue = parseInt($(this).attr('min'));
    var enteredValue = parseInt($(this).val());

    if($.isNumeric(enteredValue)) {
        var enteredValue = parseInt($(this).val());
        if (enteredValue > maxValue) {
            $(this).val(maxValue);
        } else if (enteredValue < minValue) {
            $(this).val(minValue);
        }
    } else {
        $(this).val(minValue);
    }


});

2 个答案:

答案 0 :(得分:0)

根据我可以使用dot com,Safari目前支持表单验证。通过iOS上的Safari完全没有,甚至。 Safari在非平板电脑上只有部分支持。见http://caniuse.com/form-validation

答案 1 :(得分:0)

如果您仍在寻找答案,可以使用输入类型=“数字”  min max ork如果按此顺序设置: 1名 2-最大长度 3-尺寸 4分钟 5-MAX 只需复制它

<input  name="X" maxlength="3" size="2" min="1" max="100" type="number" />