checkValidity()在函数内不起作用

时间:2013-09-10 15:19:48

标签: javascript html

我有一个简单的功能,除了提醒我有效性之外什么也没做什么:

function alertV(elem) {
    alert("here");
    alert(elem.checkValidity());
    alert("really");
}

挂钩的代码:

var elements = document.forms["form"].getElementsByTagName("input");
for (i = 0; i < elements.length; i++) {
    elements[i].onkeyup = function () { alertV(elements[i]) };
}

Here显示正常,但checkValidity()没有做任何事情,甚至导致really调用被忽略。我错误地传递了这些论点吗?我基本上只想要这个,这有效:

<input type="text" onkeyup="alertV(this);">

1 个答案:

答案 0 :(得分:1)

尝试使用闭包:

elements[i].onkeyup = (function (a)
{
    return function ()
    {
        alertV(elements[a])
    }
})(i);