Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.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 如何改进jquery函数_Javascript_Jquery - Fatal编程技术网

Javascript 如何改进jquery函数

Javascript 如何改进jquery函数,javascript,jquery,Javascript,Jquery,我正在做一个验证,它工作得很好,但我有太多重复代码,无法找到改进它的方法。这是: function validate( active ){ if( active[0].id === "mod_formSteps-1" ){ var $inputs = $("#formSteps-1 :input:not(:submit)"); var value = true; $inputs.each(function() {

我正在做一个验证,它工作得很好,但我有太多重复代码,无法找到改进它的方法。这是:

function validate( active ){

    if( active[0].id === "mod_formSteps-1" ){

        var $inputs = $("#formSteps-1 :input:not(:submit)");
        var value = true;

        $inputs.each(function() {
            if( $(this).val().length < 1 || $(this).hasClass("error")){
                value = false;
            }
        });
        return value;   
    }
    else if( active[0].id === "mod_formSteps-2" ){

        var $inputs = $("#formSteps-2 :input:not(:submit)");
        var value = true;

        $inputs.each(function() {
            if( $(this).val().length < 1 || $(this).hasClass("error")){
                value = false;
            }
        });
        return value;   
    }
    ...

    ...
    else{
        alert("something is wrong");                
    }           
    return true;
}   
功能验证(活动){
如果(活动[0]。id==“mod_formSteps-1”){
var$inputs=$(“#formSteps-1:输入:非(:提交)”);
var值=真;
$inputs.each(函数(){
if($(this.val().length<1 | |$(this.hasClass)(“错误”)){
值=假;
}
});
返回值;
}
else if(活动[0]。id==“mod_formSteps-2”){
var$inputs=$(“#formSteps-2:输入:非(:提交)”);
var值=真;
$inputs.each(函数(){
if($(this.val().length<1 | |$(this.hasClass)(“错误”)){
值=假;
}
});
返回值;
}
...
...
否则{
警惕(“有什么不对劲”);
}           
返回true;
}   

现在我有四个,如果是相同的,只需更改参数“mod#u formStepsN”和
“#formSteps-1”

类似的内容

function validate(active) {
    var numb   = active.prop('id').split('-').pop(),
        inputs = $("#formSteps-"+numb+" :input:not(:submit)"),
        value  = true;

    inputs.each(function () {
        if ($(this).val().length < 1 || $(this).hasClass("error")) {
            value = false;
        }
    });

    return value;
}
功能验证(活动){
var numb=active.prop('id').split('-').pop(),
输入=$(“#formSteps-”+numb+”:输入:不(:提交)”),
值=真;
输入。每个(函数(){
if($(this.val().length<1 | |$(this.hasClass)(“错误”)){
值=假;
}
});
返回值;
}
为什么不简单地:

function validate( active ){
    if(active[0].id != "")
    {
        var $inputs = $("#"+active[0].id+":input:not(:submit)");
        var value = true;

        $inputs.each(function() {
            if( $(this).val().length < 1 || $(this).hasClass("error")){
                value = false;
            }
        });
        return value;
    }
    else{
        alert("something is wrong");                
    }           
    return true;
}
功能验证(活动){
如果(活动[0]。id!=“”)
{
var$inputs=$(“#”+活动[0].id+“:输入:不(:提交)”);
var值=真;
$inputs.each(函数(){
if($(this.val().length<1 | |$(this.hasClass)(“错误”)){
值=假;
}
});
返回值;
}
否则{
警惕(“有什么不对劲”);
}           
返回true;
}

这个问题似乎离题了,因为它属于为什么不给他们所有人一个公共类,并用它代替ID?