将html id作为参数传递给验证函数

时间:2017-09-20 10:33:18

标签: javascript jquery

我有一个表单的jQuery验证函数。验证逻辑对于所有字段都是相同的,字段名称各不相同。我可以将html元素的ID作为方法参数传递吗?我的意思是 - 我知道我可以,但是如何在#?

之后放置它
function validateFieldName(){
        var nameFieldLength = $("#nameField").val().length;
        if(cgLength < 3 || cgLength > 15){
            $("#nameFieldLab").html("error");
            $("#nameFieldLab").show();
        }else{
            $("#nameFieldLab").hide();
        }
}

我想拥有的是单一功能,如下所示:

function validateField(formField, errorLabel){
            var fieldLength = $("#formField").val().length;
            if(cgLength < 3 || cgLength > 15){
                $("#errorLabel").html("error");
                $("#errorLabel").show();
            }else{
                $("#errorLabel").hide();
            }
    }

2 个答案:

答案 0 :(得分:0)

尝试简单的字符串连接:

function validateName(id) {
  var nameFieldLength = $("#" + id).val().length; //Here.
  ....
}

答案 1 :(得分:0)

我传递的不是一个好的传递this

function validateName(that){
        var nameFieldLength = $(that).val().length;
        if(cgLength < 3 || cgLength > 15cgLength){
            $(that).html("error");
            $(that).show();
        }else{
            $(that).hide();
        }
}