首页 文章

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

提问于
浏览
2

我想知道使用输入类型= "number"时使用Safari浏览器(MAC OS和版本7.0.4(9537.76.4))进行表单验证是否无法正常工作:访问时
http://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_input_max_min
使用Safari浏览器我希望当我在"Quantity"字段中输入指定范围之外的字母或数字时会收到警告 . 但没有任何反应,输入被发送到服务器......
使用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

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

  • 0

    如果您仍在寻找答案,可以使用输入类型= "number" .
    min max ork如果按顺序设置:1-name 2-maxlength 3-size 4-min 5-max只需复制它

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

相关问题