Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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/8/file/3.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_Validation_Loops_Contact - Fatal编程技术网

使用javascript验证联系人表单?

使用javascript验证联系人表单?,javascript,validation,loops,contact,Javascript,Validation,Loops,Contact,我有一个联系人表单,我将用JS验证它。 我需要一个函数来循环所有输入,通过搜索“@”符号,然后将其分配给稍后处理的变量,找出哪一个是电子邮件 我已经为每个输入框初始化了变量,并将它们作为输入数组中的值分配。 我对它们进行了循环,并用正则表达式对它们进行了检查(一个简单的a-z字母检查),以确保它们都输入了内容 如果它们与RegExp匹配,那么我希望将它们传递给字符串搜索,以查找@符号,从而确定哪一个是电子邮件输入 下面是我的代码,但它不起作用。 谁能告诉我哪里出了问题? 谢谢 var emai

我有一个联系人表单,我将用JS验证它。 我需要一个函数来循环所有输入,通过搜索“@”符号,然后将其分配给稍后处理的变量,找出哪一个是电子邮件

我已经为每个输入框初始化了变量,并将它们作为输入数组中的值分配。 我对它们进行了循环,并用正则表达式对它们进行了检查(一个简单的a-z字母检查),以确保它们都输入了内容

如果它们与RegExp匹配,那么我希望将它们传递给字符串搜索,以查找@符号,从而确定哪一个是电子邮件输入

下面是我的代码,但它不起作用。 谁能告诉我哪里出了问题? 谢谢

 var emailaddress;
function find_email() {
        var name = document.getElementById("username");
        var email = document.getElementById("email");
        var msg = document.getElementById("messagecontent");
        var racenum = document.getElementById("racenum");
        var input = [name, email, racenum, msg];

        for (i = 0; i <= input.length; i++) {
            var standard_check = /[a-zA-Z0-9]/g;
            if (input[i].value.match(standard_check)) {

                var str = input[i].value;
                str.search("@");
                if (str.match("@")) {
                   emailaddress= str;
                }
            }
        }
    }
var电子邮件地址;
函数find_email(){
var name=document.getElementById(“用户名”);
var email=document.getElementById(“电子邮件”);
var msg=document.getElementById(“messagecontent”);
var racenum=document.getElementById(“racenum”);
var输入=[名称、电子邮件、racenum、消息];

for(i=0;i此代码的问题是您必须为(i=0;i您在哪里定义
str
变量?哦,抱歉,我漏掉了!我将编辑我的问题并将其重新添加进去。你说不工作是什么意思?它有什么错误吗?它有什么做的吗?当我单击“提交”时,它根本没有响应。我知道在它的当前状态下,它不应该做任何事情,但如果我添加alert以确保它工作,仍然没有任何问题!没问题,很高兴能提供帮助!事实上,我没有注意到错误,直到我打开一个控制台并开始键入内容来尝试它。如果你不习惯这样做,你可以通过在你最喜欢的浏览器中点击f12来尝试使用开发工具(我最喜欢的是Chrome)。当出现问题时,控制台也会提供有用的信息。我注意到您对Vacation9的回复是它失败了,但当我在Chrome控制台中执行此操作时,它告诉我输入[I].value未定义。然后我发现它未定义的原因是因为我不在列表中。非常感谢,我会尝试的!我需要养成使用类似工具的习惯,然后再开始编写代码!