【问题标题】:Safari Browser html input type min max validation not workingSafari浏览器html输入类型最小最大验证不起作用
【发布时间】:2014-07-03 19:15:57
【问题描述】:

我想知道在使用 input type="number" 时使用 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 站点,它声明支持输入类型编号以及 min 和 max 属性。但是为什么它不起作用呢?我做错了什么或我不明白什么?

非常感谢任何帮助...

谢谢 托比

已编辑:正如 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);
    }


});

【问题讨论】:

    标签: html validation numbers max min


    【解决方案1】:

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

    【讨论】:

    • 非常感谢!!我现在添加了我的建议。
    • @Tobi:不客气。仅供参考:浏览器之间的表单行为更加不一致,新浏览器版本之间也是如此。只是have a look here,看到新的欧洲大陆 WebKit 版本将小数点逗号更改为点以用于数学形式的计算,并将小数点更改为逗号以用于数学输出字段......所以,你做出了正确的决定来恢复Javascript 验证。
    【解决方案2】:

    如果您仍在寻找答案,您可以使用 input type="number"。
    min max ork 如果按该顺序设置: 1名 2-最大长度 3 尺寸 4 分钟 最多 5 个 直接复制吧

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

    【讨论】:

      猜你喜欢
      • 2017-11-18
      • 1970-01-01
      • 2018-09-16
      • 2016-07-24
      • 1970-01-01
      • 2019-06-08
      • 2016-05-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多