如何验证输入不为空、空格或整数?

How do you verify input is not null, whitespace or integer?

我有以下代码验证我的文本框不为空,效果很好。我还需要添加什么来验证它们不是空格或包含任何整数?

function verifyDados() { 
function nullCheck() {
    var x = $(".dadosDoTutor");
    var i;
    for (i = 0; i < x.length; i++)
    if (x[i].value === '') {
        return 0;
    }
}
if (nullCheck() === 0) {
    alert ('Você ainda não tenham completado o preenchimento da tabela Dados do Tutor. Faz favor, verifique que você respondeu a cada pergunta e submeter mais uma vez.');
} 

注意:对于空白问题,我尝试调整我发现的一些 "str = jQuery.trim(str);" 类型的解决方案来研究这个主题,但无法让它们遍历我的数组,或者由于未知原因无法工作.

感谢您的帮助

您需要 trim 输入并检查 "" 以查看其中是否包含内容,然后只需使用 string.match(/\d+/g);查看它是否包含数字。

为此,false是否失败,true是否通过

 function check(input){
    var possible_integers = "0123456789".split(""); //if it has any of these, it fails
    if(input === null){
        return false;
    }
    else if(input.trim() === ""){
        return false;
    }
    else{
        for(var i = 0; i < possible_integers.length; i++){
            if(input.indexOf(possible_integers[i]) !== -1){
                    return false;
            }
        }
    }
    return true;
}

最终将上述两者与我自己的混合使用。

function verifyDados() {  
function nullCheck() {
    var x = $(".dadosDoTutor");
    var y = /\d+/g;
    var i;
    for (i = 0; i < x.length; i++)
    if (y.test(x[i].value) === true || x[i].value.trim() === "") {
        return 0;
    }
}
if (nullCheck() === 0) {
    alert ('Você ainda não tenham completado o preenchimento da tabela Dados do Tutor. Faz favor, verifique que você respondeu a cada pergunta e submeter mais uma vez.');
}