0

次のコードがあります。

var isvalid = [];
function namevalidation(){
    var checkname = $("#first-name").val();
    var namevalid = new RegExp("(^[a-zA-Z'-]+$)");
    var name_error = $("error");

    if(checkname.match(namevalid)){
        $(name_error).css("display","block");
            if($.inArray('name', isvalid) == -1){
                isvalid.push('name');
            }   
    }else{
        $(name_error).css("display","none");
            if($.inArray('name', isvalid) > -1){             
                isvalid.splice("name",1);                 
            }
    }
}

他の入力に対して多くの同様の関数があるため、配列内の文字列の位置はわかりません。上記のコードに基づいて、配列「isvalid」から文字列「name」を削除するにはどうすればよいですか?

4

1 に答える 1

1

.splice()は最初の引数としてアイテムのインデックスを取るので、試してください

var index = $.inArray('name', isvalid);
if (index > -1) {
    isvalid.splice(index, 1);
}
于 2013-11-11T08:13:12.020 に答える