Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.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_Html - Fatal编程技术网

Javascript 检查空用户文本框并添加错误消息

Javascript 检查空用户文本框并添加错误消息,javascript,html,Javascript,Html,在我的程序中,我想询问用户的姓名和宠物数量。如果用户输入一个空字符串,我需要一条错误消息来提示用户键入内容,并用输入填充文本框。目前我无法选中文本框,并且我的代码显示错误消息“请键入您的名字”,即使输入了文本。我不知道怎么解决这个问题 var$=函数(id) { 返回文档.getElementById(id); } var processInfo=函数() { //从HTML设置变量 first=$('firstname'); last=$('lastname'); petnum=$('num

在我的程序中,我想询问用户的姓名和宠物数量。如果用户输入一个空字符串,我需要一条错误消息来提示用户键入内容,并用输入填充文本框。目前我无法选中文本框,并且我的代码显示错误消息“请键入您的名字”,即使输入了文本。我不知道怎么解决这个问题

var$=函数(id)
{
返回文档.getElementById(id);
}
var processInfo=函数()
{
//从HTML设置变量
first=$('firstname');
last=$('lastname');
petnum=$('numpets');
firsterror=$('firstname_error');
lasterror=$('lastname_error');
PetNumeror=$('numpets_error');
//检查要填充的空白字符串
var errorFoundFlagFirst='N';
var errorFoundFlagLast='N';
var errorFoundFlagPet='N';
var errmsgfirst='';
var errmsglast='';
var errmsgpet='';
如果(firsterror=='')
{
errorFoundFlagFirst='Y';
}
如果(lasterror=='')
{
errorFoundFlagLast='Y';
}
如果(pEnumError=='')
{
errorFoundFlagPet='Y';
}
如果(errorFoundFlagFirst='Y')
{
errmsgfirst='请输入您的名字';
}否则{
errmsgfirst='';
}
如果(errorFoundFlagLast='Y')
{
errmsglast=“请输入您的姓氏。”;
}否则{
errmsglast='';
}
如果(errorFoundFlagPet='Y')
{
errmsgpet=“请输入宠物的数量。”;
}否则{
errmsgpet='';
}
//对于宠物名循环-当前将获取宠物名,并将其放入宠物列表中,并使用空格。
var-Petlist='';

对于(cntr=1;cntr,您的逻辑有两个问题

  • 访问文本框的值
  • 测试为空的变量不正确
  • 要访问输入的值,请使用

    // Gets you the value of the input 
    first = $('firstname').value;
    
    使用输入上的value属性检查字段是否为空。您当前正在使用检查可能显示错误的范围的值

    // this is your Current code which is incorrect
    if (firsterror === '') { errorFoundFlagFirst = 'Y'; }
    
    将上述内容替换为以下内容:

    if (first === '') { errorFoundFlagFirst = 'Y'; }
    

    我建议你重新检查一下你的逻辑!

    你把这件事弄得比需要的复杂得多。与其为空字段键入一堆代码和逻辑,不如让浏览器为你做这项工作,将它们指定为
    必需的
    。我添加了一个函数,可以动态创建pet输入

    var$=函数(id){
    返回文档.getElementById(id);
    }
    var元素=document.getElementById('pet-items');
    函数createPets(){
    element.innerHTML='';
    
    对于(i=1;他/她没有使用jquery,他的$函数只是document.getElementById的别名。@cloned-我现在明白了