Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.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 简单动态形式_Javascript_Forms_Dynamic_Input_Textinput - Fatal编程技术网

Javascript 简单动态形式

Javascript 简单动态形式,javascript,forms,dynamic,input,textinput,Javascript,Forms,Dynamic,Input,Textinput,我有一个aI需要通过.onblur验证输入,这样每当文本输入失去焦点时,它都会通过相同的JS函数进行验证 我的问题是JS函数。我想抓住失去焦点的项目的价值 function valid(){ if (isNaN("this should be the value of the text item??")){ } 感谢..要在模糊时获取项目的值,应将onBlur触发器添加到DOM元素中,如下所示: <input type="text" name="validate_me" onBlur=

我有一个aI需要通过.onblur验证输入,这样每当文本输入失去焦点时,它都会通过相同的JS函数进行验证

我的问题是JS函数。我想抓住失去焦点的项目的价值

function valid(){
if (isNaN("this should be the value of the text item??")){

}

感谢..

要在模糊时获取项目的值,应将
onBlur
触发器添加到DOM元素中,如下所示:

<input type="text" name="validate_me" onBlur="valid(this);" />

此javascript应该满足您的要求:

(function(){
    var after = function(existing,after) {
        if ( existing == null || typeof existing !== 'function' ) {
            return after;
        }
        else {
            return function() { existing(arguments); after(arguments); }
        }
    }

    var validate = function(input) {
        alert('validating ' + input.name);
    }

    window.onload = after(window.onload, function() {
        var inputs = document.getElementsByTagName('input');
        for (var i = 0; i < inputs.length; i++) {
            if ( inputs[i].type === 'text' ) {
                inputs[i].onblur = after(inputs[i].onblur, function() {
                    validate(this);
                });
            }
        }
    });
}());
(函数(){
var after=函数(现有,after){
if(existing==null | | typeof existing!==“function”){
返回后;
}
否则{
返回函数(){existing(arguments);after(arguments);}
}
}
var validate=函数(输入){
警报('正在验证'+输入.名称);
}
window.onload=after(window.onload,function(){
var inputs=document.getElementsByTagName('input');
对于(变量i=0;i
显然,您必须用验证逻辑替换validate函数中的警报,但这应该满足您的要求


需要注意的是,立即调用的功能是确保您不会撞击任何全局对象,
after
函数用于确保,如果已经连接了侦听器,则新的验证侦听器将在现有侦听器之后调用。

请发布一些代码。您可以使用
document.onLoad
注册一个使用
document.getElementByTagName('input')的方法
查找所有输入,然后为每个输入注册
onBlur
侦听器
(function(){
    var after = function(existing,after) {
        if ( existing == null || typeof existing !== 'function' ) {
            return after;
        }
        else {
            return function() { existing(arguments); after(arguments); }
        }
    }

    var validate = function(input) {
        alert('validating ' + input.name);
    }

    window.onload = after(window.onload, function() {
        var inputs = document.getElementsByTagName('input');
        for (var i = 0; i < inputs.length; i++) {
            if ( inputs[i].type === 'text' ) {
                inputs[i].onblur = after(inputs[i].onblur, function() {
                    validate(this);
                });
            }
        }
    });
}());