Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 覆盖HTMLInputElement.checkValidity有什么缺点吗?_Javascript_Html_Validation_Html5 Validation - Fatal编程技术网

Javascript 覆盖HTMLInputElement.checkValidity有什么缺点吗?

Javascript 覆盖HTMLInputElement.checkValidity有什么缺点吗?,javascript,html,validation,html5-validation,Javascript,Html,Validation,Html5 Validation,我想为HTML5输入元素(或不支持的polyfill元素)创建自定义有效性规则。为了尽可能地融入浏览器的本机验证过程,我提出了覆盖输入元素的checkValidity方法,将逻辑连接到: /* input_element is the DOM element to enhance: */ var original_check = input_element.checkValidity.bind(input_element); input_element.checkValidity = func

我想为HTML5输入元素(或不支持的polyfill元素)创建自定义有效性规则。为了尽可能地融入浏览器的本机验证过程,我提出了覆盖输入元素的checkValidity方法,将逻辑连接到:

/* input_element is the DOM element to enhance: */
var original_check = input_element.checkValidity.bind(input_element);

input_element.checkValidity = function() {
    var original_validity = original_check();

    /* run our own check only, if the original check went well */
    if (original_validity && ! custom_validity_checker(input_element)) {
        trigger_event('invalid', input_element);
        return false;
    }

    return original_validity;
};
这种方法是否存在我没有预料到的问题

据我所知,该解决方案对于多次调用是健壮的,因为有效性检查函数将被堆叠并一个接一个地调用

但是还有其他情况吗,如果
checkValidity()
不是本机方法,会让我难堪吗